0

これが非常に新しい質問である場合は、ご容赦ください。

ユーザーがビューの共有ボタンをクリックしたときに、メソッド (Facebook でオブジェクトを共有する) を呼び出す方法を教えてください。

私は共有/Facebookの部分を行うことができます.ユーザーがボタンをクリックしたときにモデルからメソッドを呼び出す方法がわかりません.

4

2 に答える 2

0

私はあなたの特定のニーズに応じて2つの潜在的な答えを見ます。

  • オブジェクト用に作成した列の外でモデルにメソッドを追加する場合は、model.rbファイルで追加できます。

model.rb

def name_twice
    "#{self.name}#{self.name}"
end

次に、モデルのインスタンスを取得して、これを「@model.name_twice」と呼ぶことができます。

  • コントローラに別のルーテッドメソッドを追加する場合は、models_controllerファイルで定義できます。

models_controller.rb

def approve
    @model = Model.find_by_id(params[:model_id])
    model.toggle!(:approved)
    redirect_to @model
end

新しいコントローラー機能を機能させるには、ルートファイルに追加する必要があります。

ルート.rb

resources :models do
   get 'approve', :on => :member 
end

これが少し役立つかもしれないことを願っています。これらの例は、モデル/コントローラーに他のメソッド/アクションを追加する方法のアイデアを提供するはずです。

于 2012-08-16T00:34:17.540 に答える
0

my_controller.rb

def do_something
 ...
end

ルート.rb

get "/something" => "my_controller#do_something", :as => :do_something
#you can also use post, put, delete or match instead of get

見る

<%= link_to "call do something", do_something_path %>

ポストなどに…

<%= link_to "call do something", do_something_path, method: :post %>
于 2012-08-15T23:24:52.813 に答える