0

我有一个表格,可以将某些内容发布到提要中。我希望用户在登录后发布到提要,但如果他们没有登录并且点击提交,我希望他们看到登录模式。这是我目前的表格,没有这个逻辑。这是一个基本的 form_for - 没什么特别的。

<%= 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 做到这一点吗?谢谢

4

1 回答 1

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%>
于 2013-11-02T16:25:40.317 回答