Ruby on rails 在Rails3.2.9中的关联过程中向现有表添加引用列

Ruby on rails 在Rails3.2.9中的关联过程中向现有表添加引用列,ruby-on-rails,ruby,ruby-on-rails-3,ruby-on-rails-3.2,Ruby On Rails,Ruby,Ruby On Rails 3,Ruby On Rails 3.2,我的rails应用程序中有两个模型。一个是我通过Desive生成的用户,另一个是链接。现在,最初我的应用程序中只有链接模型。因此,我的模型链接中有两列,即“id”和“Link”。现在我的需求已经改变,我需要实现一个用户模型。我的应用程序中的用户有一个或多个链接。因此,添加了行到我的“user.rb”的链接有很多,属于我的“link.rb”文件的:users 我生成了一个迁移,如: rails generate migration add_user_id_to_link user:referenc

我的rails应用程序中有两个模型。一个是我通过Desive生成的用户,另一个是链接。现在,最初我的应用程序中只有链接模型。因此,我的模型链接中有两列,即“id”“Link”。现在我的需求已经改变,我需要实现一个用户模型。我的应用程序中的用户有一个或多个链接。因此,添加了行
到我的“user.rb”的链接有很多,
属于我的“link.rb”文件的:users

我生成了一个迁移,如:

rails generate migration add_user_id_to_link user:references
也就是说,我正在生成一个迁移文件来修改我现有的表“links”,并向表中添加一个引用列“user\u id”

但是在运行rakedb:migrate时,它给出了一个错误。然后我运行命令:

rails genearate migration add_user_id_to_links user_id:integer
但它给出了一个未找到的命令错误。现在的问题是我如何做到这一点


先谢谢你

我很确定references助手只适用于
create\u table
。这就是第一个命令不起作用的原因

不过,第二个命令应该已经起作用了。错误可能是指向您在
生成中的打字错误


我希望这会有所帮助。

如果要将每个用户分配到他们发布的链接,您可以执行
rails g迁移添加到链接用户id:integer:index

哦,顺便说一句,如果我没有提到在创建新引用时也应该添加索引,那我就是失职了<代码>引用
可以为您做到这一点,但在迁移中添加整数则不行。