I'm having a stack level too deep error using Ruby 1.8.7 with Rails 3.0.4 and with the rails console I performed the following commands.
leo%>rails console Loading development environment (Rails 3.0.4) ruby-1.8.7-head > leo = Organization.find(1) SystemStackError: stack level too deep from /app/models/organization.rb:105:in `parents'
Here is the object that is having issues..
class Organization < ActiveRecord::Base has_many :group_organizations, :dependent => :delete_all has_many :groups, :through => :group_organizations has_many :orders has_many :product_contracts has_many :people accepts_nested_attributes_for :people has_many :addresses accepts_nested_attributes_for :addresses has_many :organizations has_many :departments has_many :organization_credits has_many :documents validates_presence_of :name def self.parents @organizations = Organization.where("is_company = ?",true) #@organization_parents = [] select_choice = I18n.t("select") + " "+ I18n.t("segments.description") @organization_parents = [select_choice] for organization in @organizations @organization_parents << [organization.name, organization.id] end return @organization_parents end
This error generally happens when you accidentally recursively changing an attribute. If you have a username attribute in User model, and a virtual attribute named username, that is directly changing the username, you end up calling the virtual, the virtual calls the virtual again and so on.. Therefore, take a look on whether something like that happens somewhere in your code.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With