Ruby on rails 所以我创建了一个params散列,给它赋值,试图提取一个值。
我正试着把它打印出来。我在这里做错了什么?Ruby on rails 所以我创建了一个params散列,给它赋值,试图提取一个值。,ruby-on-rails,ruby,hash,params,Ruby On Rails,Ruby,Hash,Params,我正试着把它打印出来。我在这里做错了什么?Person似乎是一个类(与哈希不同),因此除非该类明确定义了[]访问器(例如),否则无法以这种方式访问它。你想要的是: person1 = Person.new person1.first = "Tim" person1.last = "Happy" person2 = Person.new person2.first = "Zack" person2.last = "Sad" person3 = Person.new person3.first
Person
似乎是一个类(与哈希
不同),因此除非该类明确定义了[]
访问器(例如),否则无法以这种方式访问它。你想要的是:
person1 = Person.new
person1.first = "Tim"
person1.last = "Happy"
person2 = Person.new
person2.first = "Zack"
person2.last = "Sad"
person3 = Person.new
person3.first = "Al"
person3.last = "Angry"
params = {:father => person1, :mother => person2, :child => person3} #params hash
puts params[:father][:first]
不可否认,对于JavaScript这样的语言来说,这可能会让人感到困惑,因为这两种符号是可互换的。@RyanBigg:是什么让你认为它是ActiveRecord对象?我看不到任何迹象;此外,OP一开始就遇到了这个问题,这一事实对我来说正好相反。
puts params[:father].first