2011-10-18 2 views
1

私は1つのモデルだけのリソースを持っています:私は、Twitterのタイムラインと似たようなものを持っているアプリケーションを構築しています。記述クラスには、対応するコントローラまたはビューがありません。私が作成した方法では、メッセージが投稿されるたびに記述が作成されます。メッセージが作成される前に、ユーザー名がスキャンされ、それぞれのユーザーのための参照インスタンスが作成されます。これは、メッセージ内で起こり、モデルに言及します。 このモデルのみの状況は、ユーザーが直接やりとりしないリソースにとっては問題ありませんか?コントローラーやビューなしでリソースを使用するのは悪い習慣ですか? (レール)

これは私の最初のレールアプリです。私はまだMVCとRESTを勉強していますので、間違っています。このための適切なアーキテクチャは何でしょうか?

答えて

2

別のコントローラーやビューを必要としないデータがある場合は、それがあなたのアプリと同じです。

しかし、ネストされたモデルでさえも、RESTfulなマッピング(アプリケーションが必要な場合)を介して過度の魅力的な取得を避けることは便利です。

+0

私は本当に最後の部分を理解していません(それは、あなたがアプリが必要ならRESTfulなマッピングを介して入れ子にされたモデルを公開することはしばしば便利です)。ちょっと凝ってみませんか? –

+1

@oalo REST API経由でメッセージを取得することができます。呼び出し元がそれらを(または効率のために)望んでいない可能性があるので、必ずしも同じ呼び出しでそのメッセージの言及を返すことは望まないでしょう。しかし、もしそれらを公開する必要があれば、 'message /:id/mentions'への2回目の呼び出しで取り出すことができます。これはおそらく' Mention'コントローラで処理されます。 –

2

私は、結合テーブルとして使用されているモデルがあり、対応するコントローラまたはビューを持たない多くのプロジェクトに取り組んできました。あなたがここでやっているような音がするので、私はそれについて心配しません。

場合によっては、コントローラーとビューが対応するモデルを持たず、その逆もあります。