Gem active_admin 对应的 views 文件夹

xiaoniuniu · 2013年08月29日 · 最后由 xiaoniuniu 回复于 2013年08月29日 · 3952 次阅读

刚开始学 active_admin 看了 railscast 的教程和源代码 有个小问题想请问一下: active_admin 对应的 views 代码在哪里?例如后台我有 products,但是找不到对应的 view 所以也不知道应该如何更改,而且似乎后台的 view 和前台也不是共用的... 巨迷茫

ActiveAdmin 的 Model, View 和 Controller 都是根据 admin 下面的 [model_name].rb 文件动态生成的,这就是它强大的地方。要想定制某些部分,可以参考 resource-customization

#1 楼 @zlx_star 比如我是用了 product,就是在 app/admin/下自动生成了 product.rb,以下是我的 product.rb 的代码

ActiveAdmin.register Product do
  index do
    column :title
    column :price
    column "Created Date", :created_at
    default_actions
  end


end

default_actions 自动生成了 edit,delete 等功能,我是点到 edit 之后,不知道这个页对应的是什么 view 代码了。edit 的路径是 http://localhost:3000/admin/products/4/edit 我是想修改 admin 的 produtcts 的 edit 界面:)

#3 楼 @zlx_star 谢谢哦~这个我提问之前看过...可是还是有问题,感觉这个解决了我 admin/products 页的问题,可是我还是不知道 admin/products/1/edit 这个页面的源代码是从哪里来得 :( 不好意思啊,新手...实在比较晕,拜托帮忙~~~~

如果你要知道 admin/products/1/edit 的源代码是哪里来的,可以看 activeadmin form

如果你只是需要修改,可以参考上一个链接

#5 楼 @zlx_star 恩恩~我只是要修改,我想修改 admin/products/edit 页面里面的内容。我又仔细的看了一遍http://www.activeadmin.info/docs/5-forms.html 还是不太明白呢... 我自己的思路是从 MVC 来的,我想要修改 admin/products/edit 页面里面的内容,就应该改 views 的东西。现在后台是有显示内容的,可是不是我想要的。但是我也找不到 admin 对应 views 下面的哪个文件夹 555

active_admin 按照它的逻辑设计了一套 DSL,目的在于通过简单的配置就可以搭建一个完整的后台管理系统。 按照你这个需求,如果只是简单的修改可编辑的字段,不考虑布局和样式的话,用它的 DSL 语法,也就是直接在 from 后面跟一个 block 就够了

如果你需要的是修改整体的页面风格,样式布局的话,你可以在 views 下面建一个 admin 文件夹,然后建一个 products 文件夹放你需要的页面 比如说 edit.html.erb

#7 楼 @zlx_star 太详细了!好感动啊~~~ 因为是后台处理,其实我对页面风格没啥要求,只要基本的功能就可以。我之前没有客制化的时候,生成的 products/edit 无法上传图片,好奇怪啊.... 你的意思是加入这一段对吗?那我先试试看~~~

For example:

  ActiveAdmin.register Post do
    form :partial => "form"
  end
Then implement app/views/admin/posts/_form.html.erb:

  <%= semantic_form_for [:admin, @post] do |f| %>
    <%= f.inputs :title, :body %>
    <%= f.actions :commit %>
  <% end %>

#7 楼 @zlx_star 按你教的做了,成功了~~~谢谢指点哦!!!

10 楼 已删除
需要 登录 后方可回复, 如果你还没有账号请 注册新账号