Ruby on Rails初心者です。
独学で学んでおります。
新しくmodelを追加しようと思いplayers_controllerをいじっている際に発生いたしました。
何かを削除してしまったのか、エラーが出ないところまで戻ろうと試したのですが無理でした。
色々と試しているのですが、どこが問題なのかわからず苦戦しています。
どうか詳しい方ご教授いただけると助かります。
NoMethodError in Teams#show
undefined method `team_player_path' for #<#Class:0x007f0dbc944488:0x007f0dbc923850>
Did you mean? team_players_path
show.html.erb
<%= @team.title %><br> <% @team.players.each do |player| %> <%= player.player %><br> <%= player.body %><br> **<%= link_to 'delete', [player.team, player], method: :delete, data: {confirm: 'Are you sure?'} %><br>** <% end %> <%= form_for [@team, @team.players.build] do |f| %> Player <br> <%= f.text_field :player %><br> Plofile <br> <%= f.text_area :body %><br> <%= f.submit %> <% end %> <%= link_to 'Listへ', teams_path %>
teams_controller.rb
class TeamsController < ApplicationController def index @teams = Team.all end def show @team = Team.find params[:id] end def new end def edit @team = Team.find params[:id] end def create @team = Team.new(team_params) @team.save redirect_to team_path(@team) end def update @team = Team.find params[:id] if @team.update(team_params) redirect_to @team else render 'edit' end end def destroy @team = Team.find params[:id] @team.destroy redirect_to teams_path end def team_params params.require(:team).permit(:title,:body) end end
players_controller.rb
class PlayersController < ApplicationController def create @team = Team.find params[:team_id] @team.players.create(player_params) redirect_to team_path(@team) end def destroy #raise params.inspect @team = Team.find params[:team_id] @player = @team.playerd params[:id] @player.destroy redirect_to team_path(@team) end def player_params params.require(:player).permit(:player, :body) end end
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/05/02 13:45
2019/05/02 13:51
2019/05/02 14:15