Je souhaite créer un modèle 'Relation' qui étend ActiveRecord :: Base, définit son nom de table comme 'questions_tags', et sans clé primaire. Que devrais-je faire?Comment créer un modèle sans clé primaire dans les rails
class Relation < ActiveRecord::Base
set_table_name 'questions_tags' # set table name, right?
# how to define 'no-pk'?
end
MISE À JOUR
Salut, les gars. Je sais que l'utilisation de 'create_table' peut résoudre ce problème, mais c'est juste ce que je veux savoir: Quelle est la magie derrière create_table(:id=>false)
? Comment puis-je obtenir le même effet sans utiliser create_table(:id=>false)
?
Selon moi, il n'y a pas de magie. 'create_table' a une option supplémentaire, que la colonne' id' soit créée ou non. C'est tout. Quand vous demandez "la magie": voulez-vous dire le code, l'instruction sql générée, ou autre chose ...? – nathanvda
Si vous voulez savoir ce qui se passe dans les coulisses, je suggère de creuser depper dans l'API Rails Documentation: http://api.rubyonrails.org/classes/ActiveRecord/Base.html, http: // api .rubyonrails.org/classes/ActiveRecord/Migration.html, http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html – auralbee
@ nathanvda, auralbee: merci à vous deux. Je suis nouveau sur les rails, peut-être que j'ai besoin de lire plus d'articles sur l'ActiveRecord. – Freewind