请告诉我一种在控制器本身中分配表单元素值的方法,如:
def new
@form = Model.new @ form.name ='John'
端
答案 0 :(得分:1)
在控制器的new
操作中,创建模型的实例。
def new
@model_object = ModelName.new(name: "John")
end
并在new.html.erb
中使用您在控制器中创建的实例
<%= form_for @model_object %>
通过这种方式,您可以访问name
属性的值。
注意:强>
你真的想要ModelName.new(name: "John")
或者你想要使用ModelName.new
吗?
因为如果您使用ModelName.new(name: "John")
,那么每次在数据库中创建模型的对象时(即,在new
页面上提交表单后,将调用create
操作)它将具有名称John
,除非您在视图中覆盖它。