zen 0.1a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/LICENSE +19 -0
- data/MANIFEST +337 -0
- data/README.textile +42 -0
- data/Rakefile +6 -0
- data/bin/zen +9 -0
- data/doc/Categories.html +93 -0
- data/doc/Categories/Controllers.html +93 -0
- data/doc/Categories/Controllers/Categories.html +995 -0
- data/doc/Categories/Controllers/CategoryGroups.html +878 -0
- data/doc/Categories/Models.html +97 -0
- data/doc/Categories/Models/Category.html +269 -0
- data/doc/Categories/Models/CategoryGroup.html +231 -0
- data/doc/Comments.html +93 -0
- data/doc/Comments/Controllers.html +93 -0
- data/doc/Comments/Controllers/Comments.html +797 -0
- data/doc/Comments/Controllers/CommentsForm.html +487 -0
- data/doc/Comments/Liquid.html +93 -0
- data/doc/Comments/Liquid/CommentForm.html +522 -0
- data/doc/Comments/Liquid/Comments.html +543 -0
- data/doc/Comments/Models.html +95 -0
- data/doc/Comments/Models/Comment.html +260 -0
- data/doc/CustomFields.html +93 -0
- data/doc/CustomFields/Controllers.html +93 -0
- data/doc/CustomFields/Controllers/CustomFieldGroups.html +902 -0
- data/doc/CustomFields/Controllers/CustomFields.html +974 -0
- data/doc/CustomFields/Models.html +97 -0
- data/doc/CustomFields/Models/CustomField.html +272 -0
- data/doc/CustomFields/Models/CustomFieldGroup.html +259 -0
- data/doc/CustomFields/Models/CustomFieldValue.html +154 -0
- data/doc/Ramaze.html +93 -0
- data/doc/Ramaze/Helper.html +93 -0
- data/doc/Ramaze/Helper/ACL.html +531 -0
- data/doc/Ramaze/Helper/Asset.html +617 -0
- data/doc/Ramaze/Helper/Breadcrumb.html +411 -0
- data/doc/Ramaze/Helper/Common.html +738 -0
- data/doc/Sections.html +93 -0
- data/doc/Sections/Controllers.html +93 -0
- data/doc/Sections/Controllers/SectionEntries.html +1100 -0
- data/doc/Sections/Controllers/Sections.html +953 -0
- data/doc/Sections/Liquid.html +93 -0
- data/doc/Sections/Liquid/SectionEntries.html +674 -0
- data/doc/Sections/Liquid/Sections.html +494 -0
- data/doc/Sections/Models.html +97 -0
- data/doc/Sections/Models/Section.html +272 -0
- data/doc/Sections/Models/SectionEntry.html +264 -0
- data/doc/Sequel.html +91 -0
- data/doc/Sequel/Model.html +243 -0
- data/doc/Settings.html +93 -0
- data/doc/Settings/Controllers.html +91 -0
- data/doc/Settings/Controllers/Settings.html +565 -0
- data/doc/Settings/Liquid.html +91 -0
- data/doc/Settings/Liquid/Setting.html +426 -0
- data/doc/Settings/Models.html +95 -0
- data/doc/Settings/Models/Setting.html +293 -0
- data/doc/Users.html +93 -0
- data/doc/Users/Controllers.html +93 -0
- data/doc/Users/Controllers/AccessRules.html +904 -0
- data/doc/Users/Controllers/UserGroups.html +879 -0
- data/doc/Users/Controllers/Users.html +1124 -0
- data/doc/Users/Liquid.html +93 -0
- data/doc/Users/Liquid/User.html +480 -0
- data/doc/Users/Liquid/Users.html +495 -0
- data/doc/Users/Models.html +97 -0
- data/doc/Users/Models/AccessRule.html +257 -0
- data/doc/Users/Models/User.html +649 -0
- data/doc/Users/Models/UserGroup.html +267 -0
- data/doc/Zen.html +391 -0
- data/doc/Zen/Bin.html +113 -0
- data/doc/Zen/Bin/Base.html +727 -0
- data/doc/Zen/Controllers.html +115 -0
- data/doc/Zen/Controllers/AdminController.html +298 -0
- data/doc/Zen/Controllers/BaseController.html +272 -0
- data/doc/Zen/Controllers/FrontendController.html +164 -0
- data/doc/Zen/Controllers/MainController.html +421 -0
- data/doc/Zen/Database.html +498 -0
- data/doc/Zen/Language.html +660 -0
- data/doc/Zen/Liquid.html +117 -0
- data/doc/Zen/Liquid/ControllerBehavior.html +448 -0
- data/doc/Zen/Liquid/General.html +444 -0
- data/doc/Zen/Liquid/Redirect.html +435 -0
- data/doc/Zen/Liquid/Strip.html +447 -0
- data/doc/Zen/Logger.html +393 -0
- data/doc/Zen/Package.html +909 -0
- data/doc/_index.html +724 -0
- data/doc/class_list.html +36 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +53 -0
- data/doc/css/style.css +310 -0
- data/doc/file.README.html +86 -0
- data/doc/file_list.html +38 -0
- data/doc/frames.html +13 -0
- data/doc/index.html +86 -0
- data/doc/js/app.js +203 -0
- data/doc/js/full_list.js +149 -0
- data/doc/js/jquery.js +154 -0
- data/doc/method_list.html +1139 -0
- data/doc/top-level-namespace.html +88 -0
- data/lib/zen.rb +77 -0
- data/lib/zen/base/database.rb +105 -0
- data/lib/zen/base/language.rb +132 -0
- data/lib/zen/base/logger.rb +54 -0
- data/lib/zen/base/package.rb +233 -0
- data/lib/zen/base/version.rb +11 -0
- data/lib/zen/bin/zen_binary.rb +173 -0
- data/lib/zen/controller/admin_controller.rb +60 -0
- data/lib/zen/controller/base_controller.rb +39 -0
- data/lib/zen/controller/frontend_controller.rb +16 -0
- data/lib/zen/controller/main_controller.rb +93 -0
- data/lib/zen/helper/acl.rb +124 -0
- data/lib/zen/helper/asset.rb +104 -0
- data/lib/zen/helper/breadcrumb.rb +71 -0
- data/lib/zen/helper/common.rb +157 -0
- data/lib/zen/language/en/zen_general.rb +21 -0
- data/lib/zen/language/en/zen_models.rb +39 -0
- data/lib/zen/layout/admin.xhtml +72 -0
- data/lib/zen/layout/login.xhtml +44 -0
- data/lib/zen/liquid/controller_behavior.rb +55 -0
- data/lib/zen/liquid/general.rb +69 -0
- data/lib/zen/liquid/redirect.rb +47 -0
- data/lib/zen/liquid/strip.rb +58 -0
- data/lib/zen/model/methods.rb +26 -0
- data/lib/zen/model/settings.rb +27 -0
- data/lib/zen/packages/categories/LICENSE +19 -0
- data/lib/zen/packages/categories/README.textile +0 -0
- data/lib/zen/packages/categories/lib/categories.rb +24 -0
- data/lib/zen/packages/categories/lib/categories/controller/categories.rb +202 -0
- data/lib/zen/packages/categories/lib/categories/controller/category_groups.rb +173 -0
- data/lib/zen/packages/categories/lib/categories/language/en/categories.rb +38 -0
- data/lib/zen/packages/categories/lib/categories/language/en/category_groups.rb +37 -0
- data/lib/zen/packages/categories/lib/categories/model/category.rb +42 -0
- data/lib/zen/packages/categories/lib/categories/model/category_group.rb +29 -0
- data/lib/zen/packages/categories/lib/categories/view/admin/categories/edit.xhtml +7 -0
- data/lib/zen/packages/categories/lib/categories/view/admin/categories/form.xhtml +36 -0
- data/lib/zen/packages/categories/lib/categories/view/admin/categories/index.xhtml +70 -0
- data/lib/zen/packages/categories/lib/categories/view/admin/categories/new.xhtml +7 -0
- data/lib/zen/packages/categories/lib/categories/view/admin/category_groups/edit.xhtml +7 -0
- data/lib/zen/packages/categories/lib/categories/view/admin/category_groups/form.xhtml +18 -0
- data/lib/zen/packages/categories/lib/categories/view/admin/category_groups/index.xhtml +72 -0
- data/lib/zen/packages/categories/lib/categories/view/admin/category_groups/new.xhtml +7 -0
- data/lib/zen/packages/categories/migrations/.gitkeep +0 -0
- data/lib/zen/packages/categories/migrations/1295282303_create_schema.rb +40 -0
- data/lib/zen/packages/comments/LICENSE +19 -0
- data/lib/zen/packages/comments/README.textile +0 -0
- data/lib/zen/packages/comments/lib/comments.rb +26 -0
- data/lib/zen/packages/comments/lib/comments/controller/comments.rb +157 -0
- data/lib/zen/packages/comments/lib/comments/controller/comments_form.rb +135 -0
- data/lib/zen/packages/comments/lib/comments/language/en/comments.rb +52 -0
- data/lib/zen/packages/comments/lib/comments/liquid/comment_form.rb +97 -0
- data/lib/zen/packages/comments/lib/comments/liquid/comments.rb +115 -0
- data/lib/zen/packages/comments/lib/comments/model/comment.rb +34 -0
- data/lib/zen/packages/comments/lib/comments/view/admin/comments/edit.xhtml +7 -0
- data/lib/zen/packages/comments/lib/comments/view/admin/comments/form.xhtml +31 -0
- data/lib/zen/packages/comments/lib/comments/view/admin/comments/index.xhtml +74 -0
- data/lib/zen/packages/comments/migrations/.gitkeep +0 -0
- data/lib/zen/packages/comments/migrations/1295282202_create_schema.rb +24 -0
- data/lib/zen/packages/comments/migrations/1296949631_add_defensio_signature.rb +11 -0
- data/lib/zen/packages/custom_fields/LICENSE +19 -0
- data/lib/zen/packages/custom_fields/README.textile +0 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields.rb +24 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/controller/custom_field_groups.rb +179 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/controller/custom_fields.rb +194 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/language/en/custom_field_groups.rb +45 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/language/en/custom_fields.rb +64 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/model/custom_field.rb +41 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/model/custom_field_group.rb +32 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/model/custom_field_value.rb +20 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_field_groups/edit.xhtml +7 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_field_groups/form.xhtml +18 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_field_groups/index.xhtml +88 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_field_groups/new.xhtml +7 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_fields/edit.xhtml +7 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_fields/form.xhtml +50 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_fields/index.xhtml +75 -0
- data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_fields/new.xhtml +7 -0
- data/lib/zen/packages/custom_fields/migrations/.gitkeep +0 -0
- data/lib/zen/packages/custom_fields/migrations/1295255665_create_schema.rb +53 -0
- data/lib/zen/packages/sections/LICENSE +19 -0
- data/lib/zen/packages/sections/README.textile +43 -0
- data/lib/zen/packages/sections/lib/sections.rb +33 -0
- data/lib/zen/packages/sections/lib/sections/controller/section_entries.rb +251 -0
- data/lib/zen/packages/sections/lib/sections/controller/sections.rb +205 -0
- data/lib/zen/packages/sections/lib/sections/language/en/section_entries.rb +58 -0
- data/lib/zen/packages/sections/lib/sections/language/en/sections.rb +63 -0
- data/lib/zen/packages/sections/lib/sections/liquid/section_entries.rb +209 -0
- data/lib/zen/packages/sections/lib/sections/liquid/sections.rb +76 -0
- data/lib/zen/packages/sections/lib/sections/model/section.rb +43 -0
- data/lib/zen/packages/sections/lib/sections/model/section_entry.rb +43 -0
- data/lib/zen/packages/sections/lib/sections/view/admin/edit.xhtml +7 -0
- data/lib/zen/packages/sections/lib/sections/view/admin/form.xhtml +54 -0
- data/lib/zen/packages/sections/lib/sections/view/admin/index.xhtml +77 -0
- data/lib/zen/packages/sections/lib/sections/view/admin/new.xhtml +7 -0
- data/lib/zen/packages/sections/lib/sections/view/admin/section_entries/edit.xhtml +7 -0
- data/lib/zen/packages/sections/lib/sections/view/admin/section_entries/form.xhtml +147 -0
- data/lib/zen/packages/sections/lib/sections/view/admin/section_entries/index.xhtml +74 -0
- data/lib/zen/packages/sections/lib/sections/view/admin/section_entries/new.xhtml +7 -0
- data/lib/zen/packages/sections/migrations/.gitkeep +0 -0
- data/lib/zen/packages/sections/migrations/1295251836_create_schema.rb +35 -0
- data/lib/zen/packages/sections/migrations/1296335671_userdata_section_entries.rb +18 -0
- data/lib/zen/packages/sections/migrations/1296936110_drop_comment_antispam.rb +11 -0
- data/lib/zen/packages/settings/LICENSE +0 -0
- data/lib/zen/packages/settings/README.textile +0 -0
- data/lib/zen/packages/settings/lib/settings.rb +22 -0
- data/lib/zen/packages/settings/lib/settings/controller/settings.rb +113 -0
- data/lib/zen/packages/settings/lib/settings/language/en/settings.rb +56 -0
- data/lib/zen/packages/settings/lib/settings/liquid/setting.rb +56 -0
- data/lib/zen/packages/settings/lib/settings/model/setting.rb +38 -0
- data/lib/zen/packages/settings/lib/settings/view/admin/settings/index.xhtml +79 -0
- data/lib/zen/packages/settings/migrations/.gitkeep +0 -0
- data/lib/zen/packages/settings/migrations/1295597111_create_schema.rb +31 -0
- data/lib/zen/packages/users/LICENSE +19 -0
- data/lib/zen/packages/users/README.textile +0 -0
- data/lib/zen/packages/users/lib/users.rb +35 -0
- data/lib/zen/packages/users/lib/users/controller/access_rules.rb +186 -0
- data/lib/zen/packages/users/lib/users/controller/user_groups.rb +171 -0
- data/lib/zen/packages/users/lib/users/controller/users.rb +240 -0
- data/lib/zen/packages/users/lib/users/language/en/access_rules.rb +49 -0
- data/lib/zen/packages/users/lib/users/language/en/user_groups.rb +42 -0
- data/lib/zen/packages/users/lib/users/language/en/users.rb +63 -0
- data/lib/zen/packages/users/lib/users/liquid/user.rb +75 -0
- data/lib/zen/packages/users/lib/users/liquid/users.rb +80 -0
- data/lib/zen/packages/users/lib/users/model/access_rule.rb +29 -0
- data/lib/zen/packages/users/lib/users/model/user.rb +96 -0
- data/lib/zen/packages/users/lib/users/model/user_group.rb +38 -0
- data/lib/zen/packages/users/lib/users/public/admin/js/users/access_rules.js +43 -0
- data/lib/zen/packages/users/lib/users/view/admin/access_rules/edit.xhtml +7 -0
- data/lib/zen/packages/users/lib/users/view/admin/access_rules/form.xhtml +68 -0
- data/lib/zen/packages/users/lib/users/view/admin/access_rules/index.xhtml +85 -0
- data/lib/zen/packages/users/lib/users/view/admin/access_rules/new.xhtml +7 -0
- data/lib/zen/packages/users/lib/users/view/admin/user_groups/edit.xhtml +7 -0
- data/lib/zen/packages/users/lib/users/view/admin/user_groups/form.xhtml +19 -0
- data/lib/zen/packages/users/lib/users/view/admin/user_groups/index.xhtml +69 -0
- data/lib/zen/packages/users/lib/users/view/admin/user_groups/new.xhtml +7 -0
- data/lib/zen/packages/users/lib/users/view/admin/users/edit.xhtml +7 -0
- data/lib/zen/packages/users/lib/users/view/admin/users/form.xhtml +25 -0
- data/lib/zen/packages/users/lib/users/view/admin/users/index.xhtml +73 -0
- data/lib/zen/packages/users/lib/users/view/admin/users/login.xhtml +22 -0
- data/lib/zen/packages/users/lib/users/view/admin/users/new.xhtml +7 -0
- data/lib/zen/packages/users/migrations/.gitkeep +0 -0
- data/lib/zen/packages/users/migrations/1295281013_create_schema.rb +54 -0
- data/lib/zen/public/admin/css/boilerplate.css +174 -0
- data/lib/zen/public/admin/css/general.css +485 -0
- data/lib/zen/public/admin/css/grid.css +119 -0
- data/lib/zen/public/admin/css/layout.css +111 -0
- data/lib/zen/public/admin/images/general/noise.jpg +0 -0
- data/lib/zen/public/admin/images/icons/accept.png +0 -0
- data/lib/zen/public/admin/images/icons/add.png +0 -0
- data/lib/zen/public/admin/images/icons/back.png +0 -0
- data/lib/zen/public/admin/images/icons/bold.png +0 -0
- data/lib/zen/public/admin/images/icons/close.png +0 -0
- data/lib/zen/public/admin/images/icons/delete.png +0 -0
- data/lib/zen/public/admin/images/icons/edit.png +0 -0
- data/lib/zen/public/admin/images/icons/error.png +0 -0
- data/lib/zen/public/admin/images/icons/help.png +0 -0
- data/lib/zen/public/admin/images/icons/info.png +0 -0
- data/lib/zen/public/admin/images/icons/italic.png +0 -0
- data/lib/zen/public/admin/images/icons/large/error.png +0 -0
- data/lib/zen/public/admin/images/icons/large/notice.png +0 -0
- data/lib/zen/public/admin/images/icons/large/success.png +0 -0
- data/lib/zen/public/admin/images/icons/link.png +0 -0
- data/lib/zen/public/admin/images/icons/logout.png +0 -0
- data/lib/zen/public/admin/images/icons/ol.png +0 -0
- data/lib/zen/public/admin/images/icons/pdf.png +0 -0
- data/lib/zen/public/admin/images/icons/ul.png +0 -0
- data/lib/zen/public/admin/images/icons/user.png +0 -0
- data/lib/zen/public/admin/images/icons/view.png +0 -0
- data/lib/zen/public/admin/js/mootools/core.js +436 -0
- data/lib/zen/public/admin/js/mootools/more.js +288 -0
- data/lib/zen/public/admin/js/zen/editor/base.js +265 -0
- data/lib/zen/public/admin/js/zen/editor/drivers/html.js +104 -0
- data/lib/zen/public/admin/js/zen/editor/drivers/markdown.js +102 -0
- data/lib/zen/public/admin/js/zen/editor/drivers/textile.js +102 -0
- data/lib/zen/public/admin/js/zen/init.js +57 -0
- data/lib/zen/public/admin/js/zen/modal.js +159 -0
- data/lib/zen/public/admin/js/zen/notification.js +213 -0
- data/lib/zen/public/admin/js/zen/tabs.js +263 -0
- data/lib/zen/tasks.rb +6 -0
- data/pkg/.gitkeep +0 -0
- data/proto/app/Rakefile +2 -0
- data/proto/app/app.rb +20 -0
- data/proto/app/config.ru +18 -0
- data/proto/app/config/config.rb +17 -0
- data/proto/app/config/database.rb +18 -0
- data/proto/app/config/middlewares.rb +23 -0
- data/proto/app/config/requires.rb +8 -0
- data/proto/app/logs/.gitkeep +0 -0
- data/proto/app/public/.gitkeep +0 -0
- data/proto/app/start.rb +22 -0
- data/proto/app/vendor/.gitkeep +0 -0
- data/proto/app/vendor/themes/.gitkeep +0 -0
- data/proto/migration.rb +11 -0
- data/proto/module/LICENSE +0 -0
- data/proto/module/README.textile +0 -0
- data/proto/module/lib/module.rb +15 -0
- data/proto/module/lib/module/controller/controllers.rb +86 -0
- data/proto/module/lib/module/language/en/languages.rb +3 -0
- data/proto/module/lib/module/model/model.rb +12 -0
- data/proto/module/lib/module/view/admin/edit.xhtml +0 -0
- data/proto/module/lib/module/view/admin/form.xhtml +0 -0
- data/proto/module/lib/module/view/admin/index.xhtml +0 -0
- data/proto/module/lib/module/view/admin/new.xhtml +0 -0
- data/proto/module/migrations/.gitkeep +0 -0
- data/spec/javascript/css/base.css +177 -0
- data/spec/javascript/css/style.css +204 -0
- data/spec/javascript/css/typography.css +70 -0
- data/spec/javascript/editor/index.html +65 -0
- data/spec/javascript/images/close.png +0 -0
- data/spec/javascript/images/info.png +0 -0
- data/spec/javascript/js/editor.js +16 -0
- data/spec/javascript/js/modal.js +12 -0
- data/spec/javascript/js/namespace.js +2 -0
- data/spec/javascript/js/notification.js +43 -0
- data/spec/javascript/js/tabs.js +8 -0
- data/spec/javascript/modal/index.html +45 -0
- data/spec/javascript/notification/index.html +48 -0
- data/spec/javascript/tabs/index.html +73 -0
- data/spec/javascript/tabs/tab_1.html +1 -0
- data/spec/javascript/tabs/tab_2.html +1 -0
- data/spec/zen/base/language.rb +31 -0
- data/spec/zen/base/logger.rb +34 -0
- data/spec/zen/base/package.rb +47 -0
- data/spec/zen/config/database.rb +8 -0
- data/spec/zen/helper/asset.rb +26 -0
- data/spec/zen/helper/breadcrumb.rb +24 -0
- data/spec/zen/language/en/general.rb +4 -0
- data/spec/zen/language/nl/general.rb +4 -0
- data/spec/zen/liquid/general.rb +42 -0
- data/spec/zen/logs/.gitkeep +0 -0
- data/spec/zen/spec.rb +9 -0
- data/spec/zen/spec_database.db +0 -0
- data/tasks/bacon.rake +99 -0
- data/tasks/build.rake +72 -0
- data/tasks/clean.rake +18 -0
- data/tasks/db.rake +81 -0
- data/tasks/doc.rake +5 -0
- data/tasks/extension.rake +65 -0
- data/tasks/proto.rake +37 -0
- data/tasks/theme.rake +63 -0
- metadata +512 -0
|
@@ -0,0 +1,498 @@
|
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
4
|
+
<head>
|
|
5
|
+
<meta name="Content-Type" content="text/html; charset=utf-8" />
|
|
6
|
+
<title>Module: Zen::Database</title>
|
|
7
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
|
|
8
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />
|
|
9
|
+
|
|
10
|
+
<script type="text/javascript" charset="utf-8">
|
|
11
|
+
relpath = '..';
|
|
12
|
+
if (relpath != '') relpath += '/';
|
|
13
|
+
</script>
|
|
14
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
|
15
|
+
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
|
16
|
+
|
|
17
|
+
</head>
|
|
18
|
+
<body>
|
|
19
|
+
<script type="text/javascript" charset="utf-8">
|
|
20
|
+
if (window.top.frames.main) document.body.className = 'frames';
|
|
21
|
+
</script>
|
|
22
|
+
|
|
23
|
+
<div id="header">
|
|
24
|
+
<div id="menu">
|
|
25
|
+
|
|
26
|
+
<a href="../_index.html">Index (D)</a> »
|
|
27
|
+
<span class='title'><span class='object_link'><a href="../Zen.html" title="Zen (module)">Zen</a></span></span>
|
|
28
|
+
»
|
|
29
|
+
<span class="title">Database</span>
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
|
33
|
+
</div>
|
|
34
|
+
|
|
35
|
+
<div id="search">
|
|
36
|
+
<a id="class_list_link" href="#">Class List</a>
|
|
37
|
+
<a id="method_list_link" href="#">Method List</a>
|
|
38
|
+
<a id ="file_list_link" href="#">File List</a>
|
|
39
|
+
</div>
|
|
40
|
+
|
|
41
|
+
<div class="clear"></div>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
<iframe id="search_frame"></iframe>
|
|
45
|
+
|
|
46
|
+
<div id="content"><h1>Module: Zen::Database
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
</h1>
|
|
51
|
+
|
|
52
|
+
<dl class="box">
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
<dt class="r1">Includes:</dt>
|
|
59
|
+
<dd class="r1">Innate::Optioned</dd>
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
<dt class="r2 last">Defined in:</dt>
|
|
66
|
+
<dd class="r2 last">/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/base/database.rb</dd>
|
|
67
|
+
|
|
68
|
+
</dl>
|
|
69
|
+
<div class="clear"></div>
|
|
70
|
+
|
|
71
|
+
<h2>Overview</h2><div class="docstring">
|
|
72
|
+
<div class="discussion">
|
|
73
|
+
<p>The database module is one of the most important classes in Zen (which is quite obvious).
|
|
74
|
+
Without this module the application wouldn’t exist. The database module is basically a small
|
|
75
|
+
wrapper around the Sequel.connect method and allows developers to specify database
|
|
76
|
+
settings for various environments (live, test, production, etc) using a simple block.</p>
|
|
77
|
+
<h2>Database Configuration</h2>
|
|
78
|
+
<p>Connecting to a database is fairly easy and only requires a single configuration file.
|
|
79
|
+
In this file, called “database.rb” you’ll define all your database environments (live, dev, test, etc).</p>
|
|
80
|
+
<pre class="code">Zen::Database.mode :dev do |db|
|
|
81
|
+
db.adapter = 'mysql'
|
|
82
|
+
db.host = 'localhost'</code>
|
|
83
|
+
|
|
84
|
+
<code> db.username = 'root'
|
|
85
|
+
db.password = 'root'
|
|
86
|
+
db.database = 'database'
|
|
87
|
+
end</pre>
|
|
88
|
+
<p>In this example we’re connecting to “localhost” using the mysql adapter and selecting the database
|
|
89
|
+
called “database”. When placing multiple environments in the same file you don’t have to worry about
|
|
90
|
+
them overriding eachother, Zen will only load the environment settings of the block that matches
|
|
91
|
+
the current environment set in Ramaze.options.mode.</p>
|
|
92
|
+
<h2>Database Interaction</h2>
|
|
93
|
+
<p>Once your database configuration file has been loaded you can communicate with the database using
|
|
94
|
+
models. Each model should extend the base model provided by Sequel:</p>
|
|
95
|
+
<pre class="code"><span class='kw'>class</span> <span class='const'>Comment</span> <span class='op'><</span> <span class='const'>Sequel</span><span class='op'>::</span><span class='const'>Model</span>
|
|
96
|
+
<span class='kw'>end</span></pre>
|
|
97
|
+
<p>Models can be called like any other class and don’t need to be initialized. For more information
|
|
98
|
+
on how to use models using Sequel you should read Sequel’s documentation: http://sequel.rubyforge.com/</p>
|
|
99
|
+
|
|
100
|
+
</div>
|
|
101
|
+
</div>
|
|
102
|
+
<div class="tags">
|
|
103
|
+
<h3>Author:</h3>
|
|
104
|
+
<ul class="author">
|
|
105
|
+
|
|
106
|
+
<li>
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
<div class='inline'><p>Yorick Peterse</p></div>
|
|
113
|
+
|
|
114
|
+
</li>
|
|
115
|
+
|
|
116
|
+
</ul>
|
|
117
|
+
<h3>Since:</h3>
|
|
118
|
+
<ul class="since">
|
|
119
|
+
|
|
120
|
+
<li>
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
<div class='inline'><p>0.1</p></div>
|
|
127
|
+
|
|
128
|
+
</li>
|
|
129
|
+
|
|
130
|
+
</ul>
|
|
131
|
+
|
|
132
|
+
</div>
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
<h2>Class Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2>
|
|
136
|
+
<ul class="summary">
|
|
137
|
+
|
|
138
|
+
<li class="public ">
|
|
139
|
+
<span class="summary_signature">
|
|
140
|
+
|
|
141
|
+
<a href="#handle-class_method" title="handle (class method)">+ (Object) <strong>handle</strong> </a>
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
</span>
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
<span class="note title readonly">readonly</span>
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute handle.</p></div></span>
|
|
158
|
+
|
|
159
|
+
</li>
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
</ul>
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
<h2>
|
|
167
|
+
Class Method Summary
|
|
168
|
+
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
|
169
|
+
</h2>
|
|
170
|
+
|
|
171
|
+
<ul class="summary">
|
|
172
|
+
|
|
173
|
+
<li class="public ">
|
|
174
|
+
<span class="summary_signature">
|
|
175
|
+
|
|
176
|
+
<a href="#init-class_method" title="init (class method)">+ (Object) <strong>init</strong> </a>
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
</span>
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
<span class="summary_desc"><div class='inline'><p>Initializes a new database connection based on the configuration options specified in
|
|
190
|
+
Zen::Database.options.</p></div></span>
|
|
191
|
+
|
|
192
|
+
</li>
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
<li class="public ">
|
|
196
|
+
<span class="summary_signature">
|
|
197
|
+
|
|
198
|
+
<a href="#mode-class_method" title="mode (class method)">+ (Object) <strong>mode</strong>(mode, &block) </a>
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
</span>
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
<span class="summary_desc"><div class='inline'><p>Method that’s used to provide the ability to use different database configurations for each
|
|
212
|
+
mode.</p></div></span>
|
|
213
|
+
|
|
214
|
+
</li>
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
</ul>
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
<div id="class_attr_details" class="attr_details">
|
|
223
|
+
<h2>Class Attribute Details</h2>
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
<span id=""></span>
|
|
227
|
+
<span id="handle-class_method"></span>
|
|
228
|
+
<div class="method_details first">
|
|
229
|
+
<p class="signature first" id="handle-class_method">
|
|
230
|
+
|
|
231
|
+
+ (<tt>Object</tt>) <strong>handle</strong> <span class="extras">(readonly)</span>
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
</p><div class="docstring">
|
|
236
|
+
<div class="discussion">
|
|
237
|
+
<p>Returns the value of attribute handle</p>
|
|
238
|
+
|
|
239
|
+
</div>
|
|
240
|
+
</div>
|
|
241
|
+
<div class="tags">
|
|
242
|
+
<h3>Since:</h3>
|
|
243
|
+
<ul class="since">
|
|
244
|
+
|
|
245
|
+
<li>
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
<div class='inline'><p>0.1</p></div>
|
|
252
|
+
|
|
253
|
+
</li>
|
|
254
|
+
|
|
255
|
+
</ul>
|
|
256
|
+
|
|
257
|
+
</div><table class="source_code">
|
|
258
|
+
<tr>
|
|
259
|
+
<td>
|
|
260
|
+
<pre class="lines">
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
45
|
|
264
|
+
46
|
|
265
|
+
47</pre>
|
|
266
|
+
</td>
|
|
267
|
+
<td>
|
|
268
|
+
<pre class="code"><span class="info file"># File '/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/base/database.rb', line 45</span>
|
|
269
|
+
|
|
270
|
+
<span class='kw'>def</span> <span class='id handle'>handle</span>
|
|
271
|
+
<span class='ivar'>@handle</span>
|
|
272
|
+
<span class='kw'>end</span></pre>
|
|
273
|
+
</td>
|
|
274
|
+
</tr>
|
|
275
|
+
</table>
|
|
276
|
+
</div>
|
|
277
|
+
|
|
278
|
+
</div>
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
<div id="class_method_details" class="method_details_list">
|
|
282
|
+
<h2>Class Method Details</h2>
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
<div class="method_details first">
|
|
286
|
+
<p class="signature first" id="init-class_method">
|
|
287
|
+
|
|
288
|
+
+ (<tt>Object</tt>) <strong>init</strong>
|
|
289
|
+
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
</p><div class="docstring">
|
|
293
|
+
<div class="discussion">
|
|
294
|
+
<p>Initializes a new database connection based on the configuration options specified in
|
|
295
|
+
Zen::Database.options. Sequel will trigger an error in case any of these settings
|
|
296
|
+
are incorrect. For logging a custom logger will be used, this logger can be found in
|
|
297
|
+
Zen::Logger().</p>
|
|
298
|
+
<p>An extra notice for MySQL users, Zen uses InnoDB in order to use true foreign keys.
|
|
299
|
+
Make sure that your MySQL installation comes with the InnoDB plugin.</p>
|
|
300
|
+
|
|
301
|
+
</div>
|
|
302
|
+
</div>
|
|
303
|
+
<div class="tags">
|
|
304
|
+
<h3>Author:</h3>
|
|
305
|
+
<ul class="author">
|
|
306
|
+
|
|
307
|
+
<li>
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
<div class='inline'><p>Yorick Peterse</p></div>
|
|
314
|
+
|
|
315
|
+
</li>
|
|
316
|
+
|
|
317
|
+
</ul>
|
|
318
|
+
<h3>Since:</h3>
|
|
319
|
+
<ul class="since">
|
|
320
|
+
|
|
321
|
+
<li>
|
|
322
|
+
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
|
|
327
|
+
<div class='inline'><p>0.1</p></div>
|
|
328
|
+
|
|
329
|
+
</li>
|
|
330
|
+
|
|
331
|
+
</ul>
|
|
332
|
+
|
|
333
|
+
</div><table class="source_code">
|
|
334
|
+
<tr>
|
|
335
|
+
<td>
|
|
336
|
+
<pre class="lines">
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
69
|
|
340
|
+
70
|
|
341
|
+
71
|
|
342
|
+
72
|
|
343
|
+
73
|
|
344
|
+
74
|
|
345
|
+
75
|
|
346
|
+
76
|
|
347
|
+
77
|
|
348
|
+
78
|
|
349
|
+
79
|
|
350
|
+
80
|
|
351
|
+
81
|
|
352
|
+
82
|
|
353
|
+
83
|
|
354
|
+
84</pre>
|
|
355
|
+
</td>
|
|
356
|
+
<td>
|
|
357
|
+
<pre class="code"><span class="info file"># File '/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/base/database.rb', line 69</span>
|
|
358
|
+
|
|
359
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id init'>init</span>
|
|
360
|
+
<span class='ivar'>@handle</span> <span class='op'>=</span> <span class='const'>Sequel</span><span class='period'>.</span><span class='id connect'>connect</span><span class='lparen'>(</span>
|
|
361
|
+
<span class='symbol'>:adapter</span> <span class='op'>=></span> <span class='kw'>self</span><span class='period'>.</span><span class='id options'>options</span><span class='period'>.</span><span class='id adapter'>adapter</span><span class='comma'>,</span>
|
|
362
|
+
<span class='symbol'>:host</span> <span class='op'>=></span> <span class='kw'>self</span><span class='period'>.</span><span class='id options'>options</span><span class='period'>.</span><span class='id host'>host</span><span class='comma'>,</span>
|
|
363
|
+
<span class='symbol'>:database</span> <span class='op'>=></span> <span class='kw'>self</span><span class='period'>.</span><span class='id options'>options</span><span class='period'>.</span><span class='id database'>database</span><span class='comma'>,</span>
|
|
364
|
+
<span class='symbol'>:username</span> <span class='op'>=></span> <span class='kw'>self</span><span class='period'>.</span><span class='id options'>options</span><span class='period'>.</span><span class='id username'>username</span><span class='comma'>,</span>
|
|
365
|
+
<span class='symbol'>:password</span> <span class='op'>=></span> <span class='kw'>self</span><span class='period'>.</span><span class='id options'>options</span><span class='period'>.</span><span class='id password'>password</span><span class='comma'>,</span>
|
|
366
|
+
<span class='symbol'>:logger</span> <span class='op'>=></span> <span class='const'>Zen</span><span class='op'>::</span><span class='const'>Logger</span><span class='period'>.</span><span class='id new'>new</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='const'>Zen</span><span class='period'>.</span><span class='id options'>options</span><span class='period'>.</span><span class='id root'>root</span><span class='rbrace'>}</span><span class='tstring_content'>/logs/database</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='comma'>,</span>
|
|
367
|
+
<span class='symbol'>:test</span> <span class='op'>=></span> <span class='kw'>true</span><span class='comma'>,</span>
|
|
368
|
+
<span class='symbol'>:encoding</span> <span class='op'>=></span> <span class='const'>Zen</span><span class='period'>.</span><span class='id options'>options</span><span class='period'>.</span><span class='id encoding'>encoding</span><span class='rparen'>)</span>
|
|
369
|
+
|
|
370
|
+
<span class='comment'># We'll need to use InnoDB for MySQL tables in order to provide proper foreign key support
|
|
371
|
+
</span> <span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id options'>options</span><span class='period'>.</span><span class='id adapter'>adapter</span> <span class='op'>===</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>mysql</span><span class='tstring_end'>'</span></span> <span class='kw'>or</span> <span class='kw'>self</span><span class='period'>.</span><span class='id options'>options</span><span class='period'>.</span><span class='id adapter'>adapter</span> <span class='op'>===</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>mysql2</span><span class='tstring_end'>'</span></span>
|
|
372
|
+
<span class='const'>Sequel</span><span class='op'>::</span><span class='const'>MySQL</span><span class='period'>.</span><span class='id default_engine'>default_engine</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>InnoDB</span><span class='tstring_end'>'</span></span>
|
|
373
|
+
<span class='kw'>end</span>
|
|
374
|
+
<span class='kw'>end</span></pre>
|
|
375
|
+
</td>
|
|
376
|
+
</tr>
|
|
377
|
+
</table>
|
|
378
|
+
</div>
|
|
379
|
+
|
|
380
|
+
<div class="method_details ">
|
|
381
|
+
<p class="signature " id="mode-class_method">
|
|
382
|
+
|
|
383
|
+
+ (<tt>Object</tt>) <strong>mode</strong>(mode, &block)
|
|
384
|
+
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
</p><div class="docstring">
|
|
388
|
+
<div class="discussion">
|
|
389
|
+
<p>Method that’s used to provide the ability to use different database configurations for each
|
|
390
|
+
mode. This method basically just sets the Zen.options.db parameters based on the provided variables
|
|
391
|
+
in the block. If you don’t want to use different database configurations you can just set the variables
|
|
392
|
+
directly using Zen.options.db.</p>
|
|
393
|
+
|
|
394
|
+
</div>
|
|
395
|
+
</div>
|
|
396
|
+
<div class="tags">
|
|
397
|
+
<h3>Parameters:</h3>
|
|
398
|
+
<ul class="param">
|
|
399
|
+
|
|
400
|
+
<li>
|
|
401
|
+
|
|
402
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
<span class='name'>mode</span>
|
|
406
|
+
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
—
|
|
410
|
+
<div class='inline'><p>The development mode for which the database settings should be used.</p></div>
|
|
411
|
+
|
|
412
|
+
</li>
|
|
413
|
+
|
|
414
|
+
<li>
|
|
415
|
+
|
|
416
|
+
<span class='type'>(<tt>Block</tt>)</span>
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
<span class='name'>&block</span>
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
—
|
|
424
|
+
<div class='inline'><p>Block containing all database settings.</p></div>
|
|
425
|
+
|
|
426
|
+
</li>
|
|
427
|
+
|
|
428
|
+
</ul>
|
|
429
|
+
<h3>Author:</h3>
|
|
430
|
+
<ul class="author">
|
|
431
|
+
|
|
432
|
+
<li>
|
|
433
|
+
|
|
434
|
+
|
|
435
|
+
|
|
436
|
+
|
|
437
|
+
|
|
438
|
+
<div class='inline'><p>Yorick Peterse</p></div>
|
|
439
|
+
|
|
440
|
+
</li>
|
|
441
|
+
|
|
442
|
+
</ul>
|
|
443
|
+
<h3>Since:</h3>
|
|
444
|
+
<ul class="since">
|
|
445
|
+
|
|
446
|
+
<li>
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
|
|
450
|
+
|
|
451
|
+
|
|
452
|
+
<div class='inline'><p>0.1</p></div>
|
|
453
|
+
|
|
454
|
+
</li>
|
|
455
|
+
|
|
456
|
+
</ul>
|
|
457
|
+
|
|
458
|
+
</div><table class="source_code">
|
|
459
|
+
<tr>
|
|
460
|
+
<td>
|
|
461
|
+
<pre class="lines">
|
|
462
|
+
|
|
463
|
+
|
|
464
|
+
97
|
|
465
|
+
98
|
|
466
|
+
99
|
|
467
|
+
100
|
|
468
|
+
101
|
|
469
|
+
102
|
|
470
|
+
103</pre>
|
|
471
|
+
</td>
|
|
472
|
+
<td>
|
|
473
|
+
<pre class="code"><span class="info file"># File '/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/base/database.rb', line 97</span>
|
|
474
|
+
|
|
475
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id mode'>mode</span> <span class='id mode'>mode</span><span class='comma'>,</span> <span class='op'>&</span><span class='id block'>block</span>
|
|
476
|
+
<span class='id mode'>mode</span> <span class='op'>=</span> <span class='id mode'>mode</span><span class='period'>.</span><span class='id to_sym'>to_sym</span>
|
|
477
|
+
|
|
478
|
+
<span class='kw'>if</span> <span class='id mode'>mode</span> <span class='op'>==</span> <span class='const'>Ramaze</span><span class='period'>.</span><span class='id options'>options</span><span class='period'>.</span><span class='id mode'>mode</span>
|
|
479
|
+
<span class='kw'>yield</span> <span class='kw'>self</span><span class='period'>.</span><span class='id options'>options</span>
|
|
480
|
+
<span class='kw'>end</span>
|
|
481
|
+
<span class='kw'>end</span></pre>
|
|
482
|
+
</td>
|
|
483
|
+
</tr>
|
|
484
|
+
</table>
|
|
485
|
+
</div>
|
|
486
|
+
|
|
487
|
+
</div>
|
|
488
|
+
|
|
489
|
+
</div>
|
|
490
|
+
|
|
491
|
+
<div id="footer">
|
|
492
|
+
Generated on Sun Feb 6 21:24:00 2011 by
|
|
493
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
494
|
+
0.6.4 (ruby-1.9.2).
|
|
495
|
+
</div>
|
|
496
|
+
|
|
497
|
+
</body>
|
|
498
|
+
</html>
|