私はレールとプログラミングにかなり慣れていない、と言ってこれを前置きさせてください。
ブール属性のオンとオフを切り替えるためのリンクを作成しようとしています。私は基本的に、ネストされていないリソースで次のことを行うことでそれを行うことに成功しました。
ルート:
resources :my_resource do
get 'toggle_attribute', :on => :member
end
コントローラ:
def toggle_attribute
@resource = Resource.find(params[:id])
@resource.toggle!(:attribute)
end
意見:
<%= link_to "Toggle Resource", toggle_attribute_resource_path(@resource), :remote => true %>
まず、上で述べたように、これはネストされていないルートで機能しますが、コントローラーにどのソリューションを追加しようとしても、メッセージをフラッシュしたり、クリックしたときに何かにリダイレクトしたりするためのリンクを取得できません。ボタンを押しても何も起こらない場合は、変更を確認するために手動で更新する必要があります。
次に、次のようにネストされたルートでこれと同じ種類のものを機能させる方法がわかりません。
ルート:
resources :resource_1 do
resources :resource_2
end
誰かが私にいくつかのヒントを与えることができますか?
よろしくお願いします。このようなものが私をバタバタさせてきました。