Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 脚手架don'的栏杆模板;不适用于添加了后期迁移的列_Ruby On Rails_Ruby_Forms_Scaffolding_Rails Migrations - Fatal编程技术网

Ruby on rails 脚手架don'的栏杆模板;不适用于添加了后期迁移的列

Ruby on rails 脚手架don'的栏杆模板;不适用于添加了后期迁移的列,ruby-on-rails,ruby,forms,scaffolding,rails-migrations,Ruby On Rails,Ruby,Forms,Scaffolding,Rails Migrations,我有一个Rails项目,我使用scaffold生成模型和CRUD。现在我正在更新一些模型,因为我需要更多的列或关联。 但我注意到,我在脚手架之后添加的所有列从未从我的表单中更新。我在表单中手动添加了字段,但数据库中没有写入任何内容 就我而言,我有三个实体: 文档和人都属于用户。 当我为人生成脚手架时,起初我没有与用户的关联,我使用以下迁移脚本添加了它: class AddUserRefToPeople < ActiveRecord::Migration def change

我有一个Rails项目,我使用scaffold生成模型和CRUD。现在我正在更新一些模型,因为我需要更多的列或关联。 但我注意到,我在脚手架之后添加的所有列从未从我的表单中更新。我在表单中手动添加了字段,但数据库中没有写入任何内容

就我而言,我有三个实体:

文档都属于用户。 当我为人生成脚手架时,起初我没有与用户的关联,我使用以下迁移脚本添加了它:

class AddUserRefToPeople < ActiveRecord::Migration
    def change
        add_reference :people, :user, index: true, foreign_key: true
    end
end 
class AddUserRefToPeople
为了能够通过我的表格进行更新,我在我的文档表格中添加了同样的东西,效果非常好:

<div class="field form-group">
    <%= f.label :user, class: '...' %>
    <div class="col-sm-10">
        <%= f.select :user_id, options_for_select(User.all.map{|s| [s.firstname, s.id]}), class: '...' %>
    </div>
</div>

这个字段似乎不存在表单和模型之间的绑定(仅适用于人员实体,因为它适用于文档)

我在另一个专栏的文档上也有同样的问题。我发现的唯一模式是,我在生成脚手架之后添加了这些列

我错过什么了吗?我是否需要以不同的方式进行更新?添加新列的最佳实践是什么


如果你需要更多信息,请告诉我

您是否允许在控制器(rails强属性)中使用“user_id”!这样效果更好!非常感谢你!