Railsにはしばらくの間ネストされたリソースがあり、使用頻度が高い(または過度に使用されています)。 2つのモデル、記事とコメントがあるとします。SpineJS url()はRailsのネストされたリソースをサポートしますか?
class Article < ActiveRecord::Base
has_many :comments
end
class Comment < ActiveRecord::Base
belongs_to :article
end
だから今、私たちは特定の記事でコメントを一覧表示することができroutes.rbを
resources :articles do
resources :comments
end
にネストされたリソースを定義します。 http://localhost:3000/articles/1/comments
をしかし、POSTリクエストを作成するために脊椎はURLのみを行うことができますこのような記事とコメント:
/articles
/comments
このようなAjaxリクエストのためのSpineのURLを作る方法は?
/articles/1/comments
私は、コメントコメント用のコメントモデルでurl()をオーバーライドすることができますが、新しいレコードの作成はどうですか?
SpineのAjaxモジュールのcreate()メソッドは、Commentのインスタンスでカスタムurl()関数を気にしないこともわかりました。私が欲しいのは、article_idを渡してカスタムURL()関数を使ってURLを生成するだけです。作成するためにサーバーに投稿できます。
Spine foのフォークと修正版は自分でできますか?
がところで:私の英語のため申し訳ありませんが、
ダニエルは質問で言うように、これは作成には機能しません。 – Pelle
Ajax.getURL関数がコメントモデルに渡され、コメントのインスタンスではないため、URLの作成には機能しません。したがって、article_idが何であるかの手掛かりはありません。私の答えを確認してください: – SpoBo