1

我在用户个人资料上,即路径是......

http://localhost:3000/users/2

我有一个文本字段,因此当前用户(我)可以在他的个人资料页面上向用户 2 发送私人消息。

如何检索用户 ID 并将其传递到隐藏字段中?

<div><%= f.hidden_field :????, :value => ???? %></div>

谢谢。隐藏标签字段在表单中。如果有帮助,这是表格

<%= form_for(current_user.microposts.build(params[:micropost])) do |f| %>
  <%= render 'shared/error_messages', object: f.object %>
  <div class="field">
    <%= f.text_area :content, placeholder: "Send a private message" %>
  </div>
  <div><%= f.hidden_field :private, :value => "true" %></div>

  <%= f.submit "Post", class: "btn btn-large btn-primary" %>
<% end %>

再次感谢

4

2 回答 2

2

我会尝试嵌套路由,例如

resources :users do
  resources :microposts
end

然后使用

<%= form_for([current_user, @micropost])  do |f| %>

我尽量避免通常在 rails 中出现隐藏字段,这通常意味着我错过了一个约定。

于 2012-04-21T20:42:17.957 回答
1

在您的控制器中,您将拥有:

@user = User.find(params[:id])

所以:

<div><%= f.hidden_field :user_id, :value => @user.id %></div>

于 2012-04-21T20:17:12.150 回答