错误在rails上打印序列化数组ruby

时间:2015-01-24 13:37:00

标签: ruby-on-rails ruby-on-rails-4

当我尝试打印序列化数组时,我得到了这个错误"属性应该是一个数组,但是是一个字符串"

这是我尝试打印数组的地方

<% unless post.raffle_id.nil? %>
        Buyers:<% post.raffle_id.each do |t| %>
            <%= t %> 
        <% end %>
<% end %>

这是在post model

中定义数组的位置
serialize :raffle_id, Array

数据库架构中raffle_id的类型是text。

1 个答案:

答案 0 :(得分:0)

 #post.rb 
 class  Post < ActiveRecord::Base 
   serialize :raffle_id, Array 
 end

在您的控制台中验证帖子:

Post.inspect 
"Post(id: integer .... , raffle_id: text)" 

a = Post.new(raffle_id: [1,2,3])
a.save 
Now try to Print variable a value: 
  $ a.raffle_id
 => [1,2,3] 

在您的控制台中验证以上内容,预计这将有效。 :)