rails form nested嵌套的一个小知识点
a model project class Project < ActiveRecord::Base validates :project_name, presence: true,uniqueness: true validates :plan_time, presence: true has_many :tasks, dependent: :destroy accepts_nested_attributes_for :tasks, allow_destroy: true end
and a model task:
class Task < ActiveRecord::Base belongs_to :user belongs_to :project validates :user_id, presence: true validates :project_id, presence:true end
but when I made a form_for project:
<%= form_for(@project, do |f| %> <%= f.fields_for :tasks do |ff|%> <%= ff.label :key_name, ff.object.key_name %> <%end%>
<%end%>
上面的代码有两个小知识点,
一个是
一个是
accepts_nested_attributes_for, 设置嵌套表单。 在新建 project的controller的new方法里面 需要增加 @project.tasks.build
另外一个知识点是,
一般 form_for 方法里面
f.label 对应的value是定义在locales的多语言配置文件里面,
这里可以显示 某个字段的value, 比如:
label显示
<%= f.label, :height, f.object.name %>
f.object 代表的是当前的对象。
一般 form_for 方法里面
f.label 对应的value是定义在locales的多语言配置文件里面,
这里可以显示 某个字段的value, 比如:
label显示
<%= f.label, :height, f.object.name %>
f.object 代表的是当前的对象。
阅读量: 251
发布于:
修改于:
发布于:
修改于: