[解決済み】Rails 4 RoutingError: ルートが一致しない[POST]。
2022-02-12 20:21:20
質問
Rails 4の学習中にちょっとした練習をしているのですが、オブジェクトを更新しようとするとルーティングエラーに遭遇します。 エラーメッセージが表示され続けます。 POST] "/movies/1/edit" に一致するルートがありません。 しかし、私のコードがどこが正しくないのかわかりません。
my movies_controller.rb
class MoviesController < ApplicationController
def index
@movies = Movie.all
end
def show
@movie = Movie.find(params[:id])
end
def new
@movie = Movie.new
end
def create
@movie = Movie.create(movie_params)
if @movie.save
redirect_to "/movies/#{@movie.id}", :notice => "Your movie was saved!"
else
render "new"
end
end
def edit
@movie = Movie.find(params[:id])
end
def update
@movie = Movie.find(params[:id])
if @movie.update_attributes(params[:movie])
redirect_to "/movies"
else
render "edit"
end
end
def destroy
end
private
def movie_params
params.require(:movie).permit(:name, :genre, :year)
end
end
以下は、私のedit.html.erbです。
<h1>Now Editing:</h1>
<h3><%= @movie.name %></h3>
<%= form_for @movie.name do |f| %>
<%= f.label :name %>
<%= f.text_field :name %>
<br>
<%= f.label :genre %>
<%= f.text_field :genre %>
<br>
<%= f.label :year %>
<%= f.number_field :year %>
<br>
<%= f.submit "Update" %>
とroutes.rbファイルを作成します。
MovieApp::Application.routes.draw do
get "movies" => "movies#index"
post "movies" => "movies#create"
get "movies/new" => "movies#new"
get "movies/:id" => "movies#show"
get "movies/:id/edit" => "movies#edit"
put "movies/:id" => "movies#update"
end
最後に、次のような出力があります。
rake routes
:
Prefix Verb URI Pattern Controller#Action
movies GET /movies(.:format) movies#index
POST /movies(.:format) movies#create
movies_new GET /movies/new(.:format) movies#new
GET /movies/:id(.:format) movies#show
GET /movies/:id/edit(.:format) movies#edit
PUT /movies/:id(.:format) movies#update
解決方法は?
form_for @movie.name
は
form_for @movie
. 何が起こっているのか分かりませんが、これは何らかの形であなたに
<form action="">
.
関連
-
[解決済み】Rails。Ruby on Railsの移行でデータベースカラムの名前を変更するにはどうすればよいですか?
-
[解決済み] Herokuの問題 : あなたが探しているページは存在しません。
-
[解決済み] バリデーションなしで属性を更新する方法
-
[解決済み] Railsはsaveでモデル内の検証をスキップしますか?
-
[解決済み] Ruby on rails アプリで ES6 (ES2015) を使用するにはどうすればよいですか?
-
[解決済み] Rails 4で、以前のバージョンのRailsでattr_accessibleを使用していた状況に遭遇した場合、Forbidden Attributes Errorが発生する。
-
[解決済み] Ruby on Railsで現在の絶対URLを取得するにはどうすればよいですか?
-
[解決済み] Rails 4で懸念事項を使用する方法
-
[解決済み] /users/sign_out" に一致するルートがない devise rails 3
-
[解決済み】Railsの認証トークンを理解する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Rails: sudo "コマンドが認識されないのはなぜですか?
-
[解決済み] Ruby on rails "No route matches" (ルートに一致するものがない)。
-
[解決済み] Ruby on Railsのためにnetbeansを構成する方法は?
-
[解決済み] Rails ExecJS::ProgramError in Pages#home?
-
[解決済み] railsアプリケーションでCookieのオーバーフロー?
-
[解決済み] サーバーはRailsで既に稼働している
-
[解決済み] rails consoleを起動するとRailsのイニシャライザーが呼ばれる?
-
[解決済み] 属性を割り当てる場合、引数としてハッシュを渡す必要がある
-
[解決済み] 構文エラー "構文エラー、予期しない入力終了、keyword_endを期待 (SyntaxError)"
-
[解決済み] RSpecとCucumberの違いは何ですか?[クローズド]