在控制器中初始化rails表单元素的默认值,如@ object.name =' John&#39 ;?

时间:2014-02-24 14:35:49

标签: ruby-on-rails-4

请告诉我一种在控制器本身中分配表单元素值的方法,如:

def new

@form = Model.new   @ form.name ='John'

1 个答案:

答案 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,除非您在视图中覆盖它。