2013-11-02 55 views
0

我有一種表單,張貼東西給飼料。如果用戶登錄,我希望用戶發佈到Feed,但如果他們不是,並且他們提交了,我希望他們看到登錄模式。這是我目前的形式沒有這個邏輯。這是一個基本的形式 - 沒有什麼特別的。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做這個嗎?謝謝

回答

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%> 
相關問題