前提・実現したいこと
Ruby on railsで投稿の詳細を見る機能を実装したいです。
発生している問題
投稿詳細ページである/1にアクセスするとエラーが発生する。
エラーメッセージ
NoMethodError in Video#show Showing C:/Users/r1148/app/app/views/video/show.html.erb where line #14 raised: private method `komento' called for #<Video:0x00000000117d8168> Did you mean? komento? komento=
該当のソースコード
app/controllers/video_controller.rb
class VideoController < ApplicationController def new @video = Video.new # unless current_user # redirect_to("/") # flash[:alert] = "ログインしている方のみ投稿できます。" # end end def create @video = Video.new(video_params) if @video.save flash[:notice] = "コンテンツの作成が完了しますた!(´ . .̫ . `)" redirect_to("/") else flash[:alert] = "コンテンツ作成失敗" render :new end end def index @videos = Video.all end def show @show = Video.find(params[:id]) end def kensaku @keword = params[:word] @dougas = Video.where('title LIKE?', "%#{@keword}%") end def hosi @player = Video.search(params[:search]) end def komento end def kekka @dougas = Video.where('title LIKE?', "%#{@keword}%") @zenbu = Video.all end def riyoukiyaku end def self.search(search) if search Video.where(["(title = ?) OR (setumei = ?)", "%#{search}%", "%#{search}%"]) else Video.all end end # private def video_params params.require(:@video).permit(:video_id, :title, :setumei, :kategori) end end
app/views/video/show.html.erb
<p>投稿詳細ページです!</p> <title><h1><%= @show.title %></h1></title> <a href="/"><%= @show.kategori %></a> <iframe width="560" height="315" src="https://www.youtube.com/embed/<%= @show.video_id %>?frameborder=1?loop=1&playlist=<%= @show.video_id %>" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> <a href="1">関連記事1</a> <%= form_for @show,:url => {controller: "video", action: "hosi"} do |f| %> <%= f.hidden_field :ticket_id, value: @show.id %> <div class="col-md-6 col-md-offset-3"> <div class="field" id="star"> <%= f.label :star %> <%= f.hidden_field :star, id: :review_star %> </div> <%= f.text_area :komento, class: "form-control", size: "70x30" %> <%= f.submit "☆評価とコメントを書く", :class => "btn btn-primary" %> </div> <% end %> <script> $('#star').raty({ size : 36, starOff: '<%= asset_path('star-off.png') %>', starOn : '<%= asset_path('star-on.png') %>', scoreName: 'review[star]' }); </script> <%= @show.setumei %> <%= @show.komento %> <a href="2">関連記事2</a>
補足情報
Windows 10 home 64ビット
ruby 2.6.6
Ruby on rails 6.0.3.1
PostgreSQL 13beta1
テキストエディタ Atom
失礼な点があるかもわかりませんがどうぞ宜しくおねがい致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。