Flowdock
method

aliased_table_name_for

Importance_0
v3.0.0 - Show latest stable - 0 notes - Class: ActiveRecord::Associations::ClassMethods::JoinDependency::JoinAssociation
aliased_table_name_for(name, suffix = nil) protected

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File activerecord/lib/active_record/associations.rb, line 2218
              def aliased_table_name_for(name, suffix = nil)
                if @join_dependency.table_aliases[name].zero?
                  @join_dependency.table_aliases[name] = @join_dependency.count_aliases_from_table_joins(name)
                end

                if !@join_dependency.table_aliases[name].zero? # We need an alias
                  name = active_record.connection.table_alias_for "#{pluralize(reflection.name)}_#{parent_table_name}#{suffix}"
                  @join_dependency.table_aliases[name] += 1
                  if @join_dependency.table_aliases[name] == 1 # First time we've seen this name
                    # Also need to count the aliases from the table_aliases to avoid incorrect count
                    @join_dependency.table_aliases[name] += @join_dependency.count_aliases_from_table_joins(name)
                  end
                  table_index = @join_dependency.table_aliases[name]
                  name = name[0..active_record.connection.table_alias_length-3] + "_#{table_index}" if table_index > 1
                else
                  @join_dependency.table_aliases[name] += 1
                end

                name
              end
Register or log in to add new notes.