前提・実現したいこと
tweeterのような投稿アプリを作っています。
- if user_signed_in? && current_user.id == tweet.user_id
上記コードのようにログイン中のユーザーidが投稿したユーザーだった場合ドロップダウンメニューから編集と削除ができるようにしたいです。
しかしながら上記コードを記載するとエラーメッセージが表示されてしまいます。
発生している問題・エラーメッセージ
SyntaxError in TweetsController#index
app/views/tweets/_contents.html.haml:19: syntax error, unexpected keyword_ensure, expecting keyword_end ...:Util.html_safe(_erbout);ensure;@haml_buffer = @haml_buffer.... ... ^~~~~~/app/views/tweets/_contents.html.haml:22: syntax error, unexpected end-of-input, expecting keyword_end end ^
該当のソースコード
.content_post{:style => "background-image: url(#{tweet.image});"} .contents2 %ul.nav %li %a{:href => "#"} メニュー %ul %li = link_to '詳細', "/tweets/#{tweet.id}", method: :get - if user_signed_in? && current_user.id == tweet.user_id %li = link_to '編集', "/tweets/#{tweet.id}/edit", method: :get %li = link_to '削除', "/tweets/#{tweet.id}", method: :delete = simple_format(tweet.text) %span.name %a{:href => "/users/#{tweet.user.id}"} %span 投稿者 = tweet.user.nickname
試したこと
qiitaにて調べたところ、hamlでは本エラーメッセージが表示される場合はdoが必要とあったため、
= link_to '詳細', "/tweets/#{tweet.id}", method: :get do
または、
- if user_signed_in? && current_user.id == tweet.user_id do
と試してみましたが解決しませんでした。
補足情報(FW/ツールのバージョンなど)
ruby 2.5.1p57 (2018-03-29 revision 63029)
Rails 5.2.4.2
VScode使用バージョン: 1.44.2
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/13 03:51
2020/05/13 04:21