当我尝试打印序列化数组时,我得到了这个错误"属性应该是一个数组,但是是一个字符串"
这是我尝试打印数组的地方
<% unless post.raffle_id.nil? %>
Buyers:<% post.raffle_id.each do |t| %>
<%= t %>
<% end %>
<% end %>
这是在post model
中定义数组的位置serialize :raffle_id, Array
数据库架构中raffle_id的类型是text。
答案 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]
在您的控制台中验证以上内容,预计这将有效。 :)