Thanks, i'll try that today. On Wed, Mar 4, 2009 at 9:41 PM, Tze Yang Ng <[email protected]> wrote: > > Just did a quick glance, for ur Interest class, u declared the followings: > > " > property :user_id, Integer, :nullable => false, :key => true > belongs_to :user > " > > There is no need for the "property :user_id", having "belongs_to > :user" is good enough. As for ur fixture, u can define: > > " > Interest.fix {{ > :user => User.gen, > ... > }} > > " > > Cheers > > == > > On Wed, Mar 4, 2009 at 10:54 PM, Rafael George <[email protected]> > wrote: >> >> I'm using the model already provide from MerbAuth for an user table, >> the id field definition goes like this: >> >> property :id, Serial >> >> But when i use a fixture setting with dm-sweatshop, executing the .gen >> method i don't get an auto incremented id. >> >> The same happen with others model which fixtures that i created. >> >> Below the code for the models involve, and the code for the fixtures. >> I'm trying this with merb -i and using load("spec/spec_fixtures.rb") >> then User.gen or Question.gen >> >> class User >> >> include DataMapper::Resource >> >> # properties >> >> property :id, Serial >> >> property :login, String >> property :first_name, String >> property :last_name, String >> >> timestamps :at >> >> # associations >> >> has n, :questions >> has n, :answers >> has n, :relevancies >> has n, :interests >> has n, :questions, :through => :interests >> >> >> end >> >> class Interest >> >> include DataMapper::Resource >> >> # properties >> >> property :user_id, Integer, :nullable => false, :key => true >> property :question_id, Integer, :nullable => false, :key => true >> >> timestamps :at >> >> # associations >> >> belongs_to :user >> belongs_to :question >> >> end >> >> class Question >> >> include DataMapper::Resource >> >> # properties >> >> property :id, Serial >> >> property :user_id, Integer, :nullable => false >> >> property :title, String, :nullable => false, :length => (1..255) >> property :body, Text >> >> timestamps :at >> >> # associations >> >> belongs_to :user >> >> has n, :answers >> has n, :interests >> has n, :users, :through => :interests >> >> end >> >> User.fix(:anonymous) {{ >> :login => 'anonymous', >> :first_name => 'Anonymous', >> :last_name => 'Coward' >> }} >> >> User.fix {{ >> :login => first_name = Randgen.first_name, >> :last_name => last_name = Randgen.last_name, >> :login => "#{first_name.downcase}#{last_name[0].chr}" >> }} >> >> Question.fix {{ >> :title => /[:sentence:]{4,10}/.gen.gsub(/\.$/, '?'), >> :user_id => User.pick.id, >> :body => /[:paragraph:]/.gen >> }} >> >> Question.fix(:anonymous) {{ >> :title => /[:sentence:]{4,10}/.gen.gsub(/\.$/, '?'), >> :body => /[:paragraph:]/.gen, >> :user_id => User.pick(:anonymous).id >> }} >> >> Interest.fix { DataMapper::Sweatshop.unique {{ >> :user => User.pick, >> :question => Question.pick >> }}} >> >> ##Population >> >> User.gen(:anonymous) #create the anonymous user >> 5.of { User.gen } #randomly create 5 users >> >> 10.of { Question.gen } #create 10 questions with random >> users (not the anonymous user) >> 10.of { Question.gen(:anonymous) } #create 10 questions with the >> anonymous user >> >> 20.of { Interest.gen } #create 20 interests >> 5.of { Interest.gen(:user => User.pick(:anonymous)) } #create 5 >> interests with questions for the anonymous user >> >> Thanks in advance. >> >> -- >> Rafael George >> >> > >> > > > > -- > http://ngty77.blogspot.com > > > >
-- Rafael George --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "DataMapper" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/datamapper?hl=en -~----------~----~----~----~------~----~------~--~---
