質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Q&A

解決済

3回答

1604閲覧

syntax error, unexpected '=', expecting '.' or :: @user = User.find(params[:relationsh... ^

kawakun-----

総合スコア13

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

0グッド

0クリップ

投稿2021/03/16 07:09

構文エラーなのですが、
指示通りに記述変更してもエラーは解除されず。。。

=が違うのでしょうか。。。。

その他方法が全くわかりません。。

ご教授お願いいたします。。。。。

controllers/relationships class RelationshipsController < ApplicationController before_action :set_user def create following = current_user.follow(@user) if following.save flash[:success] = 'ユーザーをフォローしました' redirect_to @user else flash.now[:alert] = 'ユーザーのフォローに失敗しました' redirect_to @user end end def destroy following = current_user.unfollow(@user) if following.destroy flash[:success] = 'ユーザーのフォローを解除しました' redirect_to @user else flash.now[:alert] = 'ユーザーのフォロー解除に失敗しました' redirect_to @user end end private def @user = User.find(params[:relationship][:follow_id]) end end views/relationships

<% unless current_user == @user %>
<% if current_user.following?(@user) %>
<%= form_for(current_user.relationships.find_by(follow_id: user.id), html: { method: :delete }) do |f| %>
<%= hidden_field_tag :follow_id, @user %>
<%= f.submit 'Unfollow', class: 'btn btn-danger btn-block' %>
<% end %>
<% else %>
<%= form_for(current_user.relationships.build) do |f| %>
<%= hidden_field_tag :follow_id, @user %>
<%= f.submit 'Follow', class: 'btn btn-primary btn-block' %>
<% end %>
<% end %>
<% end %>

views/top
<div class="jumbotron"> <div class="container"> <nav class="navbar navbar-light"> <h1>マッチングを探す</h1> </div> <div class="top-authentication text-center"> <% if user_signed_in? %> <div class="top-authentication__sign-in-btn m-3"> <%= link_to "ログアウト", destroy_user_session_path, method: :delete, class: "logout" %> </div> <%= link_to "マイページ", user_path(current_user.id) %> <% else %> <div class="top-authentication__sign-up-btn m-3"> <%= link_to "アカウントを作成する", new_user_registration_path, class: "sign-up" %> </div> <div class="top-authentication__sign-in-btn m-3"> <%= link_to "ログイン", new_user_session_path, class: "login" %> </div> <% end %>

<% @users.each do |user|%>
<%= link_to user_path (user.id) do %>
<div class='user-img-content'>
<%= image_tag user.image, class: "user-img" %>
</div>
<% end %>
<%= render "relationships/follow_button.html.erb" %>

<% end %>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

defの後にメソッド名が無いです。

投稿2021/03/16 07:20

otn

総合スコア84542

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kawakun-----

2021/03/16 07:22

完全な凡ミスでした。。。 解決しました!! ありがとうございます!!!!!
guest

0

ベストアンサー

ruby

1 private 2 def # メソッド名がない! 3 @user = User.find(params[:relationship][:follow_id])

投稿2021/03/16 07:19

maisumakun

総合スコア145184

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kawakun-----

2021/03/16 07:23

ありがとうございます。。。。 解決しました!!
guest

0

すみません、Rubyは分からないんですが、この記事のコードでしょうか?

参考URL Qiita【Rails】form_withを使ったフォロー機能の実装手順を解説します
https://qiita.com/kurawo___D/items/68f93069fbb92aff7a63

Qiitaの記事のコードでは、set_userという文字があります。

Rails

1private 2 def set_user 3 @user = User.find(params[:relationship][:follow_id]) 4 end

syntax errorは構文エラーなので違うとは思うのですが、ちょっと気になりまして。
Rubyは未修得なためこのようなことしかお伝え出来ず申し訳ないです。

投稿2021/03/16 07:27

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kawakun-----

2021/03/16 07:40

そうです!! 解決いたしました!! ありがとうございます。。。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問