Je rencontre des difficultés pour associer des modèles dans DataMapper. C'est vraiment simple, mais je peux juste avoir l'idée.DataMapper has_one problem
, j'ai 2 tables:
1. Books
-> id
-> title
-> publisher_id
2. Publishers
-> id
-> title
Les catégories:
class Book
property :id, Serial
property :title, String
property :publisher_id, Integer
end
class Publisher
property :id, Serial
property :title, String
end
Ainsi, la question est la suivante: Comment puis-je connecter l'éditeur réserver? Il est relation 1-to-1, et le tout censé ressembler à ceci:
p = Book.get(12345).publisher
Désolé, peut-être qu'il est stupide. Mais je ne peux pas comprendre quel genre de déclaration je devrais utiliser.
Dans ActiveRecord et DataMapper, la table avec la clé étrangère est représentée par une classe avec une association belongs_to; la fin opposée de la relation est représentée par une forme d'association "a". Dans ActiveRecord, cela peut être "has_one" ou "has_many"; dans DataMapper, "has (arity)", où arity peut être n'importe quel nombre (c'est-à-dire a 1), range (a 2..4) ou infinity (a n). –