0

如何在 Refinery CMS 中添加自定义字段?也就是说,我想扩展基本页面模型以包含许多其他内容,例如屏幕截图、发布者名称、类别和各种其他字段。你如何实现它?

4

2 回答 2

7

要扩展炼油厂的基本模型,生成发动机并不总是一种选择。

我通过日期字段扩展了页面模型

  • 迁移页表
  • 猴子修补页面模型
  • 在表单中添加(实际上是扩展)一个部分

详细地:

rails g migration AddDateToPage event_date:date
rake db:migrate

添加 app/models/page.rb 与

require Refinery::Pages::Engine.config.root + 'app' + 'models' + 'page'
class Page
  attr_accessible :event_date
end

它扩展了 Page 模型,以便我的自定义字段通过批量分配设置(感谢http://railsrx.com/2011/04/15/overriding-refinery-extending-globalize-and-pow/的 require 语句)。

现在创建文件 app/views/admin/pages/_form_fields_after_title.html.erb 这是炼油厂提供的存根。您也可以使用

rake refinery:override view=admin/pages/_form_fields_after_title

这里我定义了表单域(f 由炼油厂用 form_for 对象设置)

<div class="field">
  <%= f.label :event_date, t('admin.pages.event_date') %>
  <%= f.text_field :event_date %>
</div>

重新启动应用程序后,新字段处于活动状态。

于 2012-03-21T13:59:22.790 回答
2

看看(优秀的)炼油厂入门指南。在第 6 节中,指南列出了如何使用引擎添加额外的字段 - 在示例中是日期、图片和简介:

http://refinerycms.com/guides/getting-started-with-refinery#extending-refinery-with-your-first-engine

于 2011-11-11T18:19:10.897 回答