0

我是新来的轨道。在决定发布问题之前,我一直在寻找答案。我找到的 2 个答案对我不起作用。

所以我安装和配置了一个模型“post”和“design”gem。

然后我将“用户名”添加到用户中

rails generate migration add_username_to_users username:string

然后关系

用户 --> 有很多,帖子 --> 属于用户。

但我被困住了。

我究竟如何检索用户名以与帖子一起呈现?

<%= post.user.username =%> ?

还需要做什么?

post.rb

class Post < ActiveRecord::Base
  attr_accessible :postbody, :posttitle
  validates_presence_of :postbody, :posttitle
  belongs_to :user

end

用户.rb class User < ActiveRecord::Base

# Include default devise modules. Others available are:
  # :token_authenticatable, :confirmable,
  # :lockable, :timeoutable and :omniauthable
  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable

  # Setup accessible (or protected) attributes for your model
  attr_accessible :username, :email, :password, :password_confirmation, :remember_me
  # attr_accessible :title, :body

  has_many :posts

end

4

2 回答 2

0

您没有提到您遇到的错误类型。但似乎您可能对未定义的属性有错误。通过添加模型attr_accessible :username使用户名可访问。User

于 2013-03-02T12:01:43.620 回答
0

我猜你的意思是“设计”,对吧?我不确定您的错误(可能显示整个迁移),但我建议您重置数据库而不是添加迁移。就放

t.string :username

到 create_users 迁移。然后

rake db:migrate:reset
于 2013-03-02T12:58:52.417 回答