Je ne suis pas sûr que je fais ces correctes.Comment ajouter une nouvelle entrée à une association multiple has_many?
J'ai 3 modèles, compte, utilisateur et événement.
Le compte contient un groupe d'utilisateurs. Chaque utilisateur a son propre nom d'utilisateur et mot de passe pour la connexion, mais ils peuvent accéder aux mêmes données de compte sous le même compte.
Les événements sont créés par un utilisateur, que les autres utilisateurs du même compte peuvent également lire ou modifier.
J'ai créé les migrations et les modèles suivants.
migration des utilisateurs
class CreateUsers < ActiveRecord::Migration
def self.up
create_table :users do |t|
t.integer :account_id
t.string :username
t.string :password
t.timestamps
end
end
def self.down
drop_table :users
end
end
Migration de compte
class CreateAccounts < ActiveRecord::Migration
def self.up
create_table :accounts do |t|
t.string :name
t.timestamps
end
end
def self.down
drop_table :accounts
end
end
migration événement
class CreateEvents < ActiveRecord::Migration
def self.up
create_table :events do |t|
t.integer :account_id
t.integer :user_id
t.string :name
t.string :location
t.timestamps
end
end
def self.down
drop_table :events
end
end
modèle de compte
class Account < ActiveRecord::Base
has_many :users
has_many :events
end
modèle utilisateur
class User < ActiveRecord::Base
belongs_to :account
end
modèle d'événement
class Event < ActiveRecord::Base
belongs_to :account
belongs_to :user
end
so ....
- Est-ce réglage correct?
- Chaque fois qu'un utilisateur crée un nouveau compte, le système demande des informations sur l'utilisateur, par ex. nom d'utilisateur et mot de passe. Comment puis-je les ajouter dans les bonnes tables?
- Comment puis-je ajouter un nouvel événement?
Je suis désolé pour une question si longue. Je ne comprends pas très bien la façon dont les rails sont utilisés pour gérer une telle structure de données. Merci les gars de me répondre.:)
Etes-vous sûr de vouloir créer un nom d'utilisateur et un mot de passe automatiquement? n'est-ce pas à l'utilisateur via un formulaire? – Tarscher
les utilisateurs sont tenus de saisir leur propre nom d'utilisateur et mot de passe lors de l'enregistrement du compte. –