On Dec 1, 11:13 am, cootcraig <[email protected]> wrote: > I guess I'm asking for trouble, but I have a table where the primary > key column is :key > Advice wanted on this. > > this works > DB[:dict].insert( > :key => 'A', > :value => '1', > :creation_time => now, > :modification_time => now ) > > Given this Model subclass > class DictRow < Sequel::Model > end > > this works > dictRow.create do |r| > r.key = 'Z' > r.value = 99 > end > > this fails > dictRow.create(:key => 'Y', :value => '98', :creation_time => > now, :modification_time => now) > > /home/craig/.rvm/gems/ruby-1.9.2...@sequel_ex_001/gems/sequel-3.17.0/ > lib/sequel/model/base.rb:1339:in `block in set_restricted': method > key= doesn't exist or access is restricted to it (Sequel::Error)
As this error message states, either the key= method doesn't exist, or access to it is restricted. My guess is the method does exist, but since it is a primary key column, you can't assign to it directly. You probably want to call the unrestrict_primary_key method in the DictRow class. Jeremy -- You received this message because you are subscribed to the Google Groups "sequel-talk" 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/sequel-talk?hl=en.
