У меня есть модель пользователя:Добавление user_ids к каждой статье (Завещание)
devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable has_secure_password has_many :articles
И моя схема для User
выглядит следующим образом:
create_table "users", force: true do |t| t.string "first_name" t.string "last_name" t.string "email" t.string "password_digest" t.datetime "created_at" t.datetime "updated_at" t.string "reset_password_token" t.datetime "reset_password_sent_at" t.datetime "remember_created_at" t.integer "sign_in_count", default: 0, null: false t.datetime "current_sign_in_at" t.datetime "last_sign_in_at" t.string "current_sign_in_ip" t.string "last_sign_in_ip" end
Половина из них из завещанию драгоценный камень. Так что я пытаюсь добиться, чтобы каждая статья имела автора, назначенного ему (first_name + last_name).
Моя статья модель выглядит следующим образом:
belongs_to :topic
belongs_to :user
def author
"#{self.user_id.first_name} #{self.user_id.last_name}"
end
И мои действия в контроллере статьи выглядит следующим образом:
def create
@article = Article.new(article_params)
@article.user = current_user
if @article.save
#@article.user = session[:user_id]
flash[:notice] = "Article has been uploaded"
redirect_to(:action => "show", :id => @article.id)
else
flash[:notice] = "Please fill in all fields."
render("new")
end
end
И если я <p><%[email protected]%></p>
в моем шоу взгляд, имеет ошибку, которая говорит undefined method - 'first_name'
Как добавить авторов в каждую статью.
Кроме того, я не знаю, если я должен использовать '@article.user_id = current_user' в создании действия. – xoshi827