這是很奇怪的,但是當我在我的模型添加:Rails的修改輸入字段,因爲我不想
serialize :source, Array
默認輸入字段具有「[]」符號的任何時間內你加載頁面。
當我刪除序列化,它消失。但視圖中的代碼本身沒有修改,所以我不知道如何刪除這個括號。
這真的很煩人,請幫助我。
這是很奇怪的,但是當我在我的模型添加:Rails的修改輸入字段,因爲我不想
serialize :source, Array
默認輸入字段具有「[]」符號的任何時間內你加載頁面。
當我刪除序列化,它消失。但視圖中的代碼本身沒有修改,所以我不知道如何刪除這個括號。
這真的很煩人,請幫助我。
從http://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-c-serialize
Active Record的序列化可以使用YAML文本列的任何對象。爲此,您必須通過調用類方法serialize來指定。這使得可以存儲數組,哈希和其他不可映射的對象,而無需做任何額外的工作。
class User < ActiveRecord::Base
serialize :preferences
end
我想,你有你的觀點類似<%= @my_model.source %>
。
現在,如果您從模型中刪除serialize :source, Array
,則@my_model.source
的類型爲字符串,並且您的視圖會輸出空字符串(無)。
如果添加serialize :source, Array
到模型中的@my_model.source
類型是數組。在<%= @my_model.source %>
期間轉換爲字符串的空陣列正好是您看到的:[]
。
這真是煩人,請幫幫我。
爲了幫助您,我需要知道您確實想要歸檔的內容。
source
是一個字符串,刪除serialize :source, Array
和快樂應該source
是一個數組,重寫你的看法輸出數組遍歷它的元素。例如:
<%- @my_model.source.each do |v| -%>
<li><%= v %></li>
<%- end -%>
感謝...我需要用戶輸入的字符串,其軌道轉換到陣列。剛剛添加了另一列,該列是序列化的,從源接收輸入並保存爲數組 –