Ruby on rails rails控制台返回类定义的哈希值
只是想在rails控制台中测试一些关联。为此目的定义的类“包含”关联 我最近将db适配器从sqlite3切换到mysql。这可能是一种影响吗 或者这是设置的问题,我可以在这方面更改rails控制台的行为(可能还有其他方面) 谢谢 以丹的合理要求为例Ruby on rails rails控制台返回类定义的哈希值,ruby-on-rails,database,console,Ruby On Rails,Database,Console,只是想在rails控制台中测试一些关联。为此目的定义的类“包含”关联 我最近将db适配器从sqlite3切换到mysql。这可能是一种影响吗 或者这是设置的问题,我可以在这方面更改rails控制台的行为(可能还有其他方面) 谢谢 以丹的合理要求为例 2.6.0 :005 > class Node < ApplicationRecord 2.6.0 :006?> belongs_to :parent, polymorphic: true 2.6.0 :007?> h
2.6.0 :005 > class Node < ApplicationRecord
2.6.0 :006?> belongs_to :parent, polymorphic: true
2.6.0 :007?> has_many :children, as: :parent
2.6.0 :008?> end
=> {"parent"=>#<ActiveRecord::Reflection::BelongsToReflection:0x0000560b72e96ed8 @name=:parent, @scope=nil, @options={:polymorphic=>true}, @active_record=Note (**call 'Node.connection' to establish a connection**), @klass=nil, @plural_name="parents", @type=nil, @foreign_type="parent_type", @constructable=false, @association_scope_cache=#<Concurrent::Map:0x0000560b72e96a78 entries=0 default_proc=nil>>, "children"=>#<ActiveRecord::Reflection::HasManyReflection:0x0000560b72ebac98 @name=:children, @scope=nil, @options={:as=>:parent}, @active_record=Note (call 'Node.connection' to establish a connection), @klass=nil, @plural_name="children", @type="parent_type", @foreign_type=nil, @constructable=true, @association_scope_cache=#<Concurrent::Map:0x0000560b72eba8d8 entries=0 default_proc=nil>>}
2.6.0:005>类节点属于父项,多态性:真
2.6.0:007?>有许多:孩子,如:家长
2.6.0:008?>结束
=>{“parent”=>#true}、@active#record=Note(**调用“Node.connection”建立连接**、@klass=nil、@pollular#name=“parents”、@type=nil、@foreign#type=“parent#type”、@constructable=false、@association#scope#缓存=#>、“children children”=>.@active#record=Note(调用“Node.connection”建立连接),@klass=nil、@klass=nil、@pollular#=“children”、@type=“parent_type”、@foreign_type=nil、@constructable=true、@association_scope_cache=#>}
这是因为在Ruby控制台中如何显示某个对象
是由某个对象控制的。检查结果。这个方法的“默认”是方法,它返回这个
符号,后跟对象的类名、编码对象id和实例变量列表。如果你也发布了有问题的模型正如控制台所说的,我们绝对可以给你一些好的答案。而且,我不认为更改DB引擎会对控制台输出产生那种影响。