The first error is almost certainly https://hobo.lighthouseapp.com/projects/8324-hobo/tickets/565-rake-hobogenerate_taglibs-fails-after-upgrade-to-09102, which should be fixed in edge. This is the error you provided more detail for. I presume you're running 0.9.102.
Could you give us a backtrace for the second error? And yes, this is the first place to come for help for problems like yours. cheers, Brayn Brian Corbin wrote: > I'm getting an error when I try and use ViewHints and I'm not sure > what I'm doing wrong. A simple has_many/belongs_to relationship works > fine in a test application, but in the app I'm working on now, pretty > much any children declaration in the ViewHints causes the app to crash > without rendering anything to the screen. I seem to get one of two > errors, depending on the relationship I'm trying to set up. > #<NoMethodError: undefined method `name' for nil:NilClass> > or > #<NoMethodError: undefined method `klass' for nil:NilClass> > > My models have become somewhat complex, I'll see if I can describe > what I'm trying to accomplish here before listing out the models. > > We have Users, Locations, Orders, and Products. Join tables are > LocationProduct and ProductOrder. > > * Users belong to a single Location called default_location. > > * Locations have Products, and for each Product, they have minimum and > current levels. This is to keep track of each location's product > inventory. > > * Locations have many Orders (There will be a sender and receiver > location for each order, so I can decrement/increment the product > counts and keep track of the location's inventory) > > * Orders belong to a sender and a receiver (Users) (So I know who > placed the order and who the customer is) > * Orders have many Products > * Orders belong to a sender Location and receiver Location > * Products have many Orders (through the ProductOrders join table) > * Products have many Locations (through the LocationProducts join > table) > > Sorry for hurting your brain. Well, it hurts mine at least. Anyway, > here are the model definitions: > > class User < ActiveRecord::Base > > hobo_user_model # Don't put anything above this > > fields do > name :string, :required, :unique > email_address :email_address, :login => true > administrator :boolean, :default => false > customer :boolean, :default => true > employee :boolean, :default => false > timestamps > end > > belongs_to :default_location, :class_name => "Location" > end > > class Location < ActiveRecord::Base > > hobo_model # Don't put anything above this > > fields do > name :string > timestamps > end > > has_many :users > has_many :products, :through => :location_product > has_many :orders > end > > class Order < ActiveRecord::Base > > hobo_model # Don't put anything above this > > fields do > timestamps > end > > belongs_to :sender, :class_name => "User" > belongs_to :receiver, :class_name => "User" > belongs_to :sender_location, :class_name => "Location" > belongs_to :receiver_location, :class_name => "Location" > has_many :product_orders, :accessible => true > has_many :products, :through => :product_orders, :accessible => > false > end > > class Product < ActiveRecord::Base > > hobo_model # Don't put anything above this > > fields do > name :string > code :integer > comments :text > discontinued :boolean > supplier :string > timestamps > end > > has_many :product_orders > has_many :orders, :through => :product_orders, :accessible => false > has_many :locations, :through => :location_products, :accessible => > true > end > > class LocationProduct < ActiveRecord::Base > > hobo_model # Don't put anything above this > > fields do > minimum :integer > current :integer > timestamps > end > > belongs_to :location > belongs_to :product > validates_presence_of :minimum > validates_presence_of :current > end > > class ProductOrder < ActiveRecord::Base > > hobo_model # Don't put anything above this > > fields do > quantity :integer > timestamps > end > > belongs_to :product > belongs_to :order > validates_presence_of :quantity > end > > That's my setup so far. Now if I attempt to use any children > ViewHints at all, I get one of the two errors I mentioned above. For > instance: > > class LocationHints < Hobo::ViewHints > children :users, :products, :orders > end > > Gives this error: > > Dec 08 11:24:14 -0800 2009: Read error: #<NoMethodError: undefined > method `name' for nil:NilClass> > /usr/lib/ruby/gems/1.8/gems/hobosupport-0.9.102/lib/hobo_support.rb: > 29:in `safe_constantize' > /usr/lib/ruby/gems/1.8/gems/hobo-0.9.102/lib/hobo/view_hints.rb:39:in > `__instance_exec0' > /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/ > core_ext/object/extending.rb:74:in `send' > /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/ > core_ext/object/extending.rb:74:in `instance_exec' > /usr/lib/ruby/gems/1.8/gems/hobo-0.9.102/lib/hobo/view_hints.rb:21:in > `children' > /srv/inventory/app/viewhints/location_hints.rb:2 > > > If it's inappropriate to post here for help with my models and this is > a problem with my model definitions, do please let me know where I > might find help (maybe a Rails group?) Thanks! > > Brian > > -- > > You received this message because you are subscribed to the Google Groups > "Hobo Users" 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/hobousers?hl=en. > > > -- You received this message because you are subscribed to the Google Groups "Hobo Users" 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/hobousers?hl=en.
