gpt4 book ai didi

ruby-on-rails - Rails - 使用 current_user 为表单 text_field 设置默认值

转载 作者:行者123 更新时间:2023-12-04 05:38:38 25 4
gpt4 key购买 nike

我正在尝试将我的联系表单电子邮件字段默认为 current_user.email 值。如果没有 current_user,则应显示一个简单的输入字段。我尝试了下面的方法,但如果没有 current_user,则不会显示文本字段。

<div class="form-group">
<label>Email</label>
<%= f.text_field :email, required: true, class: 'form-control', value:current_user.email if current_user %>
</div>

最佳答案

它没有显示,因为 if 语句适用于整个文本字段,而不仅仅是 value 属性。这将起作用:

<% if current_user %>
<%= f.text_field :email, required: true, class: 'form-control', value:current_user.email %>
<% else %>
<%= f.text_field :email, required: true, class: 'form-control'%>
<% end %>

但是,如果您使用的是 devise,它会附带一个辅助方法,该方法通常比 current_user 对用户更好。我认为你的代码应该是这样的:
<% if user_signed_in? %>
<%= f.text_field :email, required: true, class: 'form-control', value:current_user.email %>
<% else %>
<%= f.text_field :email, required: true, class: 'form-control'%>
<% end %>

关于ruby-on-rails - Rails - 使用 current_user 为表单 text_field 设置默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22467887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com