Я пытаюсь установить значение значения электронной почты в приведенном ниже коде, но я продолжаю получать «неопределенный метод« email = ». current_user.email основан на том, кто в настоящий момент вошел в систему. Система входа в систему была создана с использованием devise. Никогда не будет времени, когда кто-то может создать новый пост, не будучи зарегистрированным, поэтому всегда будет значение current_user.email.Установка значения из базы данных в конвейере
def create
@post= Post.new(post_params)
@post.email= current_user.email #this is the line where it falls apart
if @post.save
redirect_to posts_path, :notice => "Post Saved"
else
render "new"
end
end
Вот таблица сообщения
class CreatePosts < ActiveRecord::Migration
def change
create_table :posts do |t|
t.string :title
t.string :venmo_name
t.float :price
t.datetime :end_datetime
t.integer :areacode
t.string :email
t.timestamps null: false
end
end
end
Я разместил свою почтовую таблицу –
Это просто миграция, которая должна создать таблицу. Вы выполнили миграцию? Обязательно проверьте фактическую таблицу * базы данных *. Если вы добавите столбцы в миграцию после того, как вы уже запустили его, это не будет иметь никакого эффекта. –
Спасибо! Я просто много узнал о том, как добавлять новые столбцы в базы данных. –