Ruby on rails 管理可编辑视图
这里似乎没有一个宝石为这,我认为一个CMS是过分的,因为客户只想编辑主页上的欢迎信息 以下是我认为我应该做的: 1) 创建页面模型:Ruby on rails 管理可编辑视图,ruby-on-rails,Ruby On Rails,这里似乎没有一个宝石为这,我认为一个CMS是过分的,因为客户只想编辑主页上的欢迎信息 以下是我认为我应该做的: 1) 创建页面模型: rails g model Page name:string 2) 创建字段模型: rails g model Field name:string content:string page_id:integer 3) 创建关系,第h1页:b2字段 4) 创建rake任务以设置属于欢迎页面的消息字段: namespace :seeder do namesp
rails g model Page name:string
2) 创建字段模型:
rails g model Field name:string content:string page_id:integer
3) 创建关系,第h1页:b2字段
4) 创建rake任务以设置属于欢迎页面的消息字段:
namespace :seeder do
namespace :initial_seed do
task pages: :environment do
p = Page.create(name: "Welcome")
p.fields.create(name: "welcomemessage", content: "everything goes here. The long rambling welcome!")
end
end
end
5)为“静态”页面创建“静态”控制器。家,关于我们的故事等等。
class Static < ApplicationController
def home
@fields = Page.where().fields
end
end
这只是我想做的一个粗略的概述。不过,我想问几个问题
@fields
变量(参见步骤5)的聪明方法是什么面板/pages.html.erb
视图,它是否应该简单地显示文本区域中的所有可编辑字段?它应该如何更新这些领域?多个表单中的多个提交按钮?如果有人想一次编辑多个字段,然后一次提交所有字段,该怎么办面板
控制器内创建多个RESTful操作类面板
一个控制器中的多个restful路由对我来说并不是有组织的,但如果不是管理的话,它可以更容易地通过before_action钩子重定向来锁定面板控制器
另外,我的一项大工作即将结束,我需要做的就是在一个页面上添加编辑一个字段的功能,我已经完成了,我真的不想弄明白炼金术或其他什么。将来,是的,但是,请,请,请有人在这里给我一些小提示。我强烈建议不要建立自己的CMS。它充满了困难,而且你现在似乎遇到了一些困难。你应该去看看像这样的东西。我相信你是对的,如果我是用图像、子弹头和其他东西创作的,我会研究炼金术(顺便说一句)。然而,它实际上是一个页面上一个可编辑的文本位。
<% field = @fields.find {|x| x[:name] == 'welcomemessage' } %>
<%= field.content %>
class Panel < ApplicationController
def pages
@pages = Page.all
end
end
<% @pages.each do |page| %>
Title: <%= page.name %>
<% page.fields.each do |field|%>
Field: <%= field.name %>
<% form_for(field) do |f| %>
<% f.text_area :content%>
<% f.submit %>
<%= end %>
<% end %>
<% end %>
class Panel < ApplicationController
# new and create not present as the pages have to be created manually
# Enabling the user to create their own pages with their own layouts is a bit insane
def pages
@pages = Page.all
end
def pages_update
end
def pages_destroy
end
end