如何提交表格并删除帖子

时间:2016-06-02 01:08:34

标签: ruby-on-rails

我在rails项目中有两个模型:LinkCampaign。 在Link的show.html.erb中,我有一个表单来创建新的Campaign 看起来像这样

 <%= form_for :campaign, url: campaigns_path do |f| %>
   <%= f.hidden_field :name, value: current_user.email %>
   <%= f.hidden_field :product, value: @link.product %>
   <%= f.hidden_field :title, value: @link.title %>
   <%= f.hidden_field :website, value: current_user.website %>
   <%= f.hidden_field :productlink, value: @link.url %>
   <%= f.hidden_field :description, value: @link.description %>
   <%= f.hidden_field :date, value: Date.today.to_s %>
   <br>
   <br>
   <%= f.submit :"Let's Go Make Some Money", class: "btn btn-primary" %>
 <% end %>

这很有效。我的问题是在为Link创建基于它的新帖子时删除Campaign的帖子。基本上,我想提交一份表格并删除其他内容。

1 个答案:

答案 0 :(得分:0)

您可以在form_for中传递要销毁的链接的ID:

  <%= form_for @campaign, :url => { :controller => :campaign, :action=>:create, :link_id => @link.id } do |f| %>

   <%= f.hidden_field :name, value: current_user.email %>
   <%= f.hidden_field :product, value: @link.product %>
   <%= f.hidden_field :title, value: @link.title %>
   <%= f.hidden_field :website, value: current_user.website %>
   <%= f.hidden_field :productlink, value: @link.url %>
   <%= f.hidden_field :description, value: @link.description %>
   <%= f.hidden_field :date, value: Date.today.to_s %>
   <br>
   <br>
   <%= f.submit :"Let's Go Make Some Money", class: "btn btn-primary" %>
 <% end %>

在你的links_controller.rb中:

 def show
      @campaign = Campaign.new
    end

在您的campaigns_controller.rb中:     def show       @     端

def create
  @link = Link.find(params[:link_id])
  @link.destroy
  ...
  # create campaign
end