я собираюсь через несколько Rails 3 и 4 учебника и попадался то, что я хотел бы некоторое представление о:Rails контроллер создает разницу действий между Model.new и Model.create
В чем разница между моделью .new и Model.create в отношении действия Create. Я думал, что вы используете метод create
в контроллере для сохранения, например. @post = Post.create(params[:post])
, но похоже, что я ошибаюсь. Любое понимание очень ценится.
Создать действие с помощью Post.new
def new
@post = Post.new
end
def create
@post = Post.new(post_params)
@post.save
redirect_to post_path(@post)
end
def post_params
params.require(:post).permit(:title, :body)
end
Создать действие с помощью Post.create
def new
@post = Post.new
end
def create
@post = Post.create(post_params)
@post.save
redirect_to post_path(@post)
end
def post_params
params.require(:post).permit(:title, :body)
end
У меня есть два вопроса
- Является ли это сделать с 4 смены Rails?
- Неплохая практика использования
@post = Post.create(post_params)
?
возможно дубликат [Рельсы новый против создания] (http://stackoverflow.com/questions/2472393/rails-new-vs-create) – Amadan
Спасибо за ссылку Amadan. Является ли Rails REST реализацией 'GET' и' POST' такими же, как действия контроллера 'new' и' create'? Я пытаюсь уточнить действия REST vs controller и методы контроллера. –
Извините, я должен был уточнить; ответ Джастина Этье конкретно относится к методам ActiveRecord. – Amadan