2016-03-29 2 views
2

私は学生の作業を評価するためのアプリケーションで作業しています。学生が新しい投稿を作成するとき、RailsはPOST動詞を使い、人生は良いです。しかし、作業が遅れてPostが欠落している場合、RailsはPOSTの代わりにPATCH動詞を使用して(同じルートを使用して)作成し、Postを作成しようとすると失敗します。私の知る限りは、二つの状況の違いを伝えることができるようRailsはPOSTを使用するとPatchを使用しています

ActionController::RoutingError (No route matches [PATCH] "https://stackoverflow.com/users/55/posts”) 

RailsがPATCHを使用することを決定したスコアのインスタンスが存在することである:私はHerokuののログに表示さ

Iエラーメッセージがあります動詞。スコアモデルには次の行が含まれています:

belongs_to :post, touch: true 

これは動作の違いについて責任がありますか?私は思ったかもしれませんが、不足している割り当てのスコアが作成されたときに投稿オブジェクトは作成されませんでした(チェックした方法はPost.where(user: score.user)からbin/rails cになりました。)結果は空の配列でした

道はありますか?それはPATCHをしたい時にPOSTを行うためのRailsを強制的に?

答えて

1

をより多くの情報なしに診断するのは難しい。あなたは明示的にPOSTメソッドを使用するようにRailsのを指示するform_for @user, method: :post do |f|を使用することができます。

+0

は私が?参考になる何の情報追加するのに役立つだろうか分からなかった。 – dlu

関連する問題