0
我有許多Microposts的用戶。 Microposts屬於用戶。現在只有用戶可以發佈他/她的個人資料。我如何讓每個人都在那裏發帖。我已經運行了一個遷移,將列「sender_id」添加到Micropost表中,但我似乎無法弄清楚如何使用sender_id工作。感謝閱讀,我是新手。我如何允許用戶發佈其他人的個人資料
微柱創建控制器:
@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 %>
在微柱表我想USER_ID要與輪廓和SENDER_ID的人是用戶認爲在其他帖子個人資料。
的解決辦法是添加hidden_field_tag的形式,微柱得到USER_ID參數組,然後@user = User.find(PARAMS [:USER_ID])
感謝任何想法我應該爲@user在這裏? – Jaqx 2013-04-30 05:54:58
這取決於您使用的路由。如果你有/ users /:user_id/microposts之類的東西,那麼你可以把'params [:user_id]'替換爲「73」。您應該檢查執行操作時params變量包含的內容,以確定您是否可以檢索此信息。 – 2013-04-30 05:59:25
@user = User.find(params [:user_id])返回「無法找到沒有ID的用戶」。我認爲它會起作用。這是因爲帖子還沒有創建,但user_id是無效的帖子? – Jaqx 2013-04-30 06:03:19