0

Rails 3.2.7、mongoid 3 を使用しており、ユーザー アカウントに devise を使用しようとしています。

始める前に: 私は自分の問題をたくさん探していました。多くのチュートリアルを読みましたが、私のニーズに合うものはありませんでした。

デバイスと複数の「ユーザー」モデルのような同様の問題があります

しかし、私はmongodbを使用しているので、問題はまったく同じではないと思います。

3 種類のユーザーがいます」:

  1. 多くの場所を持つことができ、それらを管理できるマネージャー (情報を編集)。
  2. 場所を検索して場所のリストを作成できるユーザー (ユーザーでなくても可能)。また、ユーザーは場所にコメントしてメモすることができます。
  3. 何でも編集・削除できる管理者なので管理者は神です。

したがって、それらはすべて異なるデータ(ログイン情報を除く)を持っており、どのソリューションが最適かわかりません。

STIは同じデータで違うアクションがあれば良いのですが、データも違います(モンゴイドを使っているので大丈夫でしょうか?)

ロールを持つ単一ユーザー モデルは別のソリューションですが、おそらくポリモーフィックを使用して、さまざまなデータを保存する方法がわかりませんか? 私はそれがdeviseとcancanでどのように実装されるべきかを完全には理解していません。

ひょっとしたら3番目もあるのでは?

STI、ポリモーフィック アソシエーション、CanCan でロールを実装する方法は知っていますが、問題は、それらをデバイスに接続する方法がわからないことです。

サインイン フォームが少なくても 1 つでもかまいません。私もdeviseを使う必要はありません。

マルチユーザーアプリケーションにデバイス、モノギッド、ロールを使用する方法のチュートリアル/例はほとんど見つかりませんでしたが、それらはユーザーが同じデータを保存する場合であるため、私には合いません。

アドバイス、または私に役立つリンクを教えていただけますか?

手伝ってくれてありがとう :)

4

1 に答える 1

0

ユースケースごとに異なるコントローラーを構築することをお勧めします。データ内に異なるビューの依存関係を構築しないでください。このようにして、データを直接変更することなく、他のユース ケースや他のユーザー グループに自由に使用できます。

さまざまなユースケースに合わせてコントローラーを作成するだけです。このようにして、データ モデルを変更せずにいつでも変更できます。

于 2013-01-12T12:00:32.290 に答える