精通Grails: 改变Grails应用程序的外观 - 编程入门网
输出结果
现在 Grails 1.1 已经安装完成,可以创建新的应用程序了。 创建应用程序 输入 grails create-app blogito 以生成初始的目录结构。转到新的 blogito 目录并输入 grails create-domain-class Entry,以创建表示 blog 条目的类。在 grails-app/domain 找到 Entry.groovy ,并添加清单 3 中的代码: 清单 3. 创建 Entry 类
每个 Entry 有一个 title 和 summary 字段。将 maxSize 限制范围设置为 1,000 个字符,这会导致 动态地构造 HTML 表单,从而为 summary 字段提供文本区域(而不是简单的文本字段)。 记住,dateCreated 和 lastUpdated 是 Grails 中比较神奇的字段名。这些时间戳字段非常适合 blog 应用程序 — 它们允许在列表的顶部保留最新的 Entry。 在域类准备就绪之后,下一步就是创建一个控制器。输入 grails create-controller Entry。将清单 4 中的代码添加到 grails-app/controllers/EntryController.groovy: 清单 4. 创建 EntryController
精通Grails: 改变Grails应用程序的外观(3)时间:2011-08-02 IBM Scott Davis表面上看起来很简单的 def scaffold = Entry 行指示 Grails 为 Entry 类构造其余的支持。您随后 将获得一个条目表,其中 Entry 类中的每个字段都有一个列(以及一个主键 ID 字段和一个乐观锁定的 版本字段)。您还获得完整的 Groovy 服务器页面(Groovy Server Pages,GSP),它们提供很普通但至 关重要的 Create/Retrieve/Update/Delete (CRUD) 功能。 输入 grails run-app 并通过 Web 浏览器访问 http://localhost:8080/blogito。单击 EntryController,然后单击 New Entry。这样做的好处是所有 Entry 字段都出现在创建表单中(如图 1 所示)。但这也有不好的地方 — 用户不应该处理这些时间戳字段。您需要调整默认的模板来解决这个问 题。 图 1. Create Entry 表单中可编辑的时间戳字段 调整默认模板 您可以输入 grails generate-views Entry 手动地从 GSP 文件中删除 dateCreated 和 lastUpdated 字段,但这不能从根本上解决问题。您可能希望这些字段永远不出现在创建和编辑表单中。最好是在 def scaffold 中更改模板。 输入 grails install-templates。在 src/templates/scaffolding 中查找 create.gsp 和 edit.gsp 。在每个文件中,将 dateCreated 和 lastUpdated 添加到 excludedProps,如清单 5 所示: 清单 5. 从 list.gsp 和 show.gsp 模板中删除时间戳字段
重启 Grails,确保时间戳字段不再出现(参见图 2): 图 2. 不包含时间戳字段的表单 精通Grails: 改变Grails应用程序的外观(4)时间:2011-08-02 IBM Scott Davis更改排序的顺序 添加新条目时,默认情况下是根据 ID 对表进行排序的。blog 通常以逆时针顺序对条目进行排序 — 最新的排在前面。在以前版本的 Grails 中,要更改默 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |