問題タブ [inherited-resources]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
123 参照

ruby-on-rails - RESTful にネストされた従来のルーティング

私はモデルを持っています:

  • User -1---n- Transaction(amount,description, date)
  • User -1---n- TransactionImport -1---n- TransactonImportField(name,value)

(個人経費追跡アプリ)。

私が達成したいのはこれです:

  1. ユーザーは URL を開き、トランザクションのリストを含む CSV を貼り付けます。
  2. ユーザーが送信します。
  3. システムは、CSV からTransactionImport(行) + TransactionImportField(セル) にデータを抽出します。
  4. ユーザーは、インポートされたデータから、どの列が何を意味するか (金額、説明、日付) を選択できますTransactionImport(Field)
  5. ユーザーが保存をクリックすると、システムTransactionImportはトランザクションに移行します。

私が正しく理解できないのは、ステップ 3 でTransactionImport(および関連するTransactionImportField) の複数のレコードが作成されるという事実です。

したがってPOST /transaction_imports?csv=abcd、RESTful である場合、1 つのレコードが生成されることが期待されます。しかし、コードは次のようになっているはずです。

実装がinherited_resourcesに収まらないと感じているため、おそらく間違った角度からタスクに取り組んでいます。

これを実装する最も一般的な方法を教えてください。

ありがとう、
ドミトリー。

0 投票する
1 に答える
909 参照

ruby-on-rails - inherited_resources と cancan の競合

inherited_resources と Ryan Bates の cancan gem と競合があります。

私はいくつかの単純なコントローラーを持っています

とルート

すべてが正しいように見えますが、http://localhost:8080/issues/tag/tag1 をリクエストしようとすると、

コントローラーから load_and_authorize_resource を削除した後 - すべて正常に動作しますが、アクセス制御が必要です。

この問題を解決する方法はありますか?

0 投票する
1 に答える
969 参照

ruby-on-rails - inherited_resources - 親に移動

私は 2 つの継承されたリソース (Jose Valim のプラグインを使用) を持っています - ブログと投稿。もちろん - ブログ hm 投稿と投稿 bt ブログ。ルートだけで十分です

また、アクションの投稿#indexを次のように更新しました

私が計画したように - http://devhost/blogs/2/postsにアクセスしようとすると、 http://devhost/blogs/2にリダイレクトされますが、ルーティングエラーが表示されます

私が見るのでとても奇妙です

レーキルートで。

任意のアイデア - 次のエラーの原因は何ですか?

0 投票する
1 に答える
1200 参照

ruby-on-rails - ネストされた多様なコメントに inherited_resources を使用する

継承されたリソースを使用するのは初めてで、ポリモーフィックなネストされたコメントに使用したいと考えています。コメント可能なオブジェクト (記事、ギャラリーなど) がいくつかあり、コメントをネストすることもできます。awesome_nested_set (parent_id, lft, rgt) と多態的なコメント可能な列を持つ Comment モデルを組み合わせて使用​​しています。

コントローラーは、作成アクションの AJAX 要求 (のみ) を受信し、以下のように実行する必要があります。

/articles/12/comments/34に投稿すると、commentable が @article (12) に、parent が @comment (34) に等しいコメントが作成されます。

/記事/12/コメント/34

/gallery/12/comments/34に投稿 すると、commentable が @gallery (12) に、parent が @comment (34) に等しいコメントが作成されます。

私はどこから始めればいいのか少し行き詰まっています。これは、継承されたリソースの適切な使用例ですか?


0 投票する
4 に答える
3016 参照

ruby-on-rails - 継承されたリソースとMongoid

Rails 3、Mongoid、および継承されたリソースを機能させることに成功した人はいますか?それを実現するためのヒントはありますか?両方の宝石を使いたいです。

現在私は遭遇しています:

インデックスアクションについて。

ありがとう!


ところで、スコープの問題の回避策は、次のようにコレクションをオーバーライドすることです。

しかし、私はより全体的なアプローチを探しています

0 投票する
1 に答える
873 参照

ruby-on-rails - cancanとinherited_resourcesの上書きコレクション

私は私のお気に入りの2つの宝石との衝突に遭遇していると思います。次のことを考慮してください。

CanCanがcollectionメソッドを呼び出していないようです。すべきだと思います。

既知の回避策はありますか?私は愚かなことをしていますか?

ありがとう!

0 投票する
1 に答える
581 参照

ruby-on-rails - declarative_authorizationの包含および継承されたリソース

declarative_authorizationとinherited_resourcesのgemがインストールされたrails3アプリがあります。私のアプリのコードをいくつか紹介します。

私の承認ルール:

私が使用するposts/index.html.hamlで

そして私のposts_controllerで

見た目は良さそうですが、機能しません:(

テストユーザーには、1つのブログのモデレーターのメンバーシップを持つモデレーターの役割がありますが、2番目のブログのメンバーシップはありません。

以下のルールとコードを使用すると、モデレーターの役割を持つすべてのユーザーが任意のブログに投稿を作成できます。

教えてください-ブログの作成者とモデレーターだけが自分のブログに投稿を送信でき、他のブログには送信できないようにするには、何を変更する必要がありますか?

0 投票する
1 に答える
1711 参照

ruby-on-rails - CanCan、InheritedResources、STI

cancan、inherited_resources、および単一テーブルの継承を一緒に使用するにはどうすればよいですか? この例に似たコードがあります:

ユーザーとして Person を作成しようとすると、CanCan::AccessDenied が発生します。これは、InheritedResources が Contact を :resource_class として使用するためです。

0 投票する
1 に答える
949 参照

ruby-on-rails - 継承されたリソースと CanCan 3 レベルのネスト

継承されたリソースと組み合わせた CanCan でのモデルの 3 レベルのネストに問題があります。すべてを 2 レベルまでネストする必要があると読みましたが、すべてをaccountモデルの下に配置する必要があったため、CanCan でこれを実行してみました。

それを上書きしているように、@project の値を持つ @account 変数が得られます。@project は本来あるべきものであり、@model もそうです。それは私のせいですか、CanCan's、継承されたリソースですか、それとも CanCan が 3 レベルのネストをサポートしていないだけですか? また、ModelsController の IR でこれを行います。

load_and_別の奇妙なことは、CanCan の定義からその部分を削除したときです。その場合は機能しますが、その部分を使用しないと危険になる可能性があることを読みましたload.

のみを使用できますか、authorize_resourceまたは CanCan で何かを行う必要がありますか?