我正在使用设计用于我的用户模型和routes.rb我有devise_for :users
我将如何给用户发帖?
它只是在路线中:
resources :users do
resources :posts
end
或者你必须做一些特别的事情,因为设计
答案 0 :(得分:5)
这些路线可以使用,另外你需要在你的模型中设置关系,假设你的帖子表包含user_id作为外键:
class User < ActiveRecord::Base
has_many :posts
has_many :comments
end
class Post < ActiveRecord::Base
belongs_to :user
has_many :comments
end
class Comments < ActiveRecord::Base
belongs_to :user
belongs_to :post
end
修改强>
将外键添加到Post模型中:
rails g migration add_user_id_to_posts user_id:integer
这将在db / migrate文件夹中创建一个类似于以下内容的迁移文件:
class AddUserIdToPosts < ActiveRecord::Migration
def self.up
add_column :posts, :user_id, :integer
end
def self.down
remove_column :posts, :user_id
end
end
然后,您可以使用以下方法将这些更改迁移到数据库: rake db:migrate