我的用户有很多微博。微博属于用户。现在只有用户可以在他/她的个人资料上发帖。我怎么能让每个人都在那里发帖。我已经运行了一个迁移,将列“sender_id”添加到 Micropost 表中,但我似乎无法弄清楚如何使用 sender_id。我是 Rails 新手,感谢阅读。
微博创建控制器:
@user = User.find(73) #change so it posts to the user page im on
@micropost = @user.microposts.build(params[:micropost])
@micropost.sender_id = current_user.id
if @micropost.save
flash[:success] = "Music Posted!"
redirect_to :back
end
微博形式:
<%= form_for(@micropost) do |f| %>
<div class="field">
<%= f.text_area :comment, placeholder: "send a message" %>
</div>
<%= f.submit "Share", class: "btn btn-medium btn-primary" %>
<% end %>
在 Microposts 表中,我希望 User_id 是拥有个人资料的人,而 Sender_id 是在其他人的个人资料上发帖的用户。
解决方案是将 hidden_field_tag 添加到微帖子表单以获取 user_id 参数集,然后 @user = User.find(params[:user_id])