私はいくつかの小さなROR「ほとんど静的」タイプのサイトを持っており、あまり経験のないもう少し深いものに取り組んでいます...
BIG ピクチャーの命名法。アカウントには多くのユーザーとプロジェクトがあります。ユーザーは多くのプロジェクトを持っています。ユーザーはプロジェクトに多くのファイルとメモを追加します....
最後に、ユーザーがプロジェクト、ファイル、およびメモを表示できるビューを生成する必要があります。以下の手動で作成された「概念実証」に類似したリストまたは表:
Project1
Notes
note1
note2
note3
Files
file1
file2
file2
Users
user1
user2
Project2
Notes
note1
note2
note3
Files
file1
file2
file2
Users
user1
user2
上記のリストは、組み込みの Ruby for ループのようなものを使用して生成されますが、その前に、適切なモデルの関連付けと呼び出しがあることを確認する必要があります。
すべてのテーブルから外部キーを持たないようにしようとしていますが、マルチモデルのベスト プラクティスにかなり混乱しています。外部キーがない場合、「model1_model2」命名規則を使用するモデルである可能性がある結合テーブルが必要だと思いますか? および「:through」モデル関係?
現在の私のモデル(これはかなり変化しています)は次のとおりです。
アカウント:
class Account < ActiveRecord::Base
has_many :projects
has_many :users
終わり
ユーザー:
class User < ActiveRecord::Base
has_one :account
has_many :projects, :through => :accounts
has_many :dataFiles, :through => :projects
has_many :notes, :through => :projects
終わり
計画:
class Project < ActiveRecord::Base
belongs_to :account
has_many :users
has_many :datafiles
has_many :notes
終わり
データファイル:
class DataFile < ActiveRecord::Base
belongs_to :projects
belongs_to :users
終わり
ノート:
class Note < ActiveRecord::Base
belongs_to :project
belongs_to :users
終わり
ご覧のとおり。ここで迷った!私はたくさんのチュートリアルを行い、本を読みました。これは、主に静的なページだけではない、私の最初の実世界のアプリケーションです....
これを行う方法はたくさんあるようです。どのモデルを使用し、どのように接続する必要があるかについて、専門家の指示を探していると思います。
あなたが提供できる指示やアドバイスは大歓迎です。ありがとうございました!