私の_follow.html.rbフォームで送信しようとすると、次のエラーが表示され、なぜパラメータが渡されないのかわかりません。どのようにParameterMissingエラーを解決するには?
私が得た:
ActionController :: ParameterMissingはがUserControllerの#アップデートで
paramが存在しないか、値が空である:ユーザー
def user_params
params.require(:user).permit(:name, :email, :password,
:password_confirmation, :followed_user)
end
は、これは、要求
Parameters:
{"utf8"=>"✓",
"_method"=>"patch",
"authenticity_token"=>"LOnA6CA3yQYaCDqme6OkxPZlkBRvybhYANreU3BxuV8=",
"followed_user"=>"#<User:0x007f4e902fcf20>",
"commit"=>"Follow",
"id"=>"57f2b32b717f01297dda1759"}
です
ベローはビューです
<%= form_for(current_user) do |f| %>
<div><%= hidden_field_tag :followed_user, @user %></div>
<%= f.submit "Follow", class: "btn btn-primary" %>
<% end %>
そして、これは私があなたの代わりにのための「現在利用者」の「@user」を持っているあなたのフォームが必要だと思う私のUserモデル
class User
include Mongoid::Document
include ActiveModel::SecurePassword
has_many :microposts, dependent: :destroy
has_and_belongs_to_many :followers, :class_name => 'User', :inverse_of => :following
has_and_belongs_to_many :following, :class_name => 'User', :inverse_of => :followers
field :name, type: String
field :email, type: String
field :password_digest, :type => String
field :admin, type: Boolean, default: false
field :created_at, type: Date, default: Time.current
has_secure_password
def feed
microposts
end
# Follows a user.
def follow(other_user)
following << other_user
end
# Unfollows a user.
def unfollow(other_user)
following.delete(other_user)
end
# Returns true if the current user is following the other user.
def is_following?(other_user)
following.include?(other_user)
end
end