2016-06-02 8 views
0

私はレールプロジェクトで2つのモデル:LinkCampaignを持っています。 Linkためshow.html.erbで 私はそれがこのフォームを送信して投稿を削除する方法

<%= 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 %> 

この作品のように見える新しいCampaign を作成するためのフォームを持っています。私の問題はCampaignのためにそれに基づいて新しい投稿を作成しながらLinkの投稿を削除することです。基本的には、フォームを提出して他のものを削除したい。

+0

リンクIDを入力してください隠しフィールドとキャンペーンコントローラ(アクションを作成する)に入る...それを削除 – Mukesh

+0

@Mukesh私はそれについてやりますか?私はしばらくそれを探していましたが、私はまだそれを見つけることができません。 –

答えて

0

あなたはのform_forに破壊するリンクのID渡すことができます。あなたのlinks_controller.rbで

<%= 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 %> 

def show 
     @campaign = Campaign.new 
    end 

そして、あなたのcampaigns_controller.rb中: DEFショー @ end

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

これを行うと、構文エラー...予期しない '、'、expecting ')' ... r.append = form_for(:campaign、link_id:@ link.id)、url:cam .. ...:また、yntaxエラー、予期しない ')'、keyword_endを期待しています...(:campaign、link_id:@ link.id)、url:campaigns_path do | f | ... ... ^あなたは問題を知っていますか? –

+0

@SamHenrichs私はビューの最初の行を編集しました。それを試してください –

+0

私は小さな誤りがあると思います。私はルートエラーが発生しました。 'No route matches {:action =>" create "、:controller =>" campaign "、id =>" 12 "}'私はキャンペーンのIDとリンクの間に分割が必要であると思う。助けてくれてありがとう、サム –

関連する問題