我有一个表单可以将内容发布到Feed中。如果他们已登录,我希望用户发布到Feed,但如果他们不是并且他们点击提交,我希望他们看到登录模式。这是我目前没有这种逻辑的形式。这是一个基本的形式 - 没什么特别的。
<%= form_for(@sub_opp) do |f| %>
<div class="field">
<%= f.label :sport, :class=>'form_label' %>
<%= f.select :sport, ['Basketball', 'Beach Volleyball', 'Flag Football'] %>
</div>
<div class="field" id = "datetime_select">
<%= f.label :Sub_Date, :class=>'form_label' %>
<%= f.datetime_select :sub_time, :ampm => true, :minute_step => 15 %>
</div>
<div class="actions">
<%= f.submit 'POST', :class=>"btn btn-success btn-large" %>
</div>
<% end %>
从概念上讲,当我点击提交按钮时,我想在这些行中加入逻辑。
<% if current_user.present? %>
Submit the form
Otherwise
<a href="#myModal" data-toggle="modal">
你能用form_for做到吗?感谢
答案 0 :(得分:0)
我用简单的if / then语句想出来了。很惊讶我没想到这个。感谢。
<% if current_user.present? %>
<div class="field">
<%= f.hidden_field :poster_user_id, :value => current_user.id %>
</div>
<div class="actions">
<%= f.submit 'POST', :class=>"btn btn-success btn-large" %>
</div>
<%else%>
<div class="actions">
<a href="#myModal" data-toggle="modal", class ="btn btn-success btn-large">POST</a>
</div>
<%end%>