2010-09-30 26 views
10

Tôi đang tìm để học cách serialize dữ liệu trong Rails 3 ...Rails 3 Serialize

Những điều tôi muốn tìm hiểu:

  • A. gì đăng dữ liệu trông giống như (ví dụ cho photo_id: 123.123, PHOTO_NAME:. "Blah)
  • B. làm thế nào để serialize dữ liệu trong Rails 3
  • C. làm thế nào để trích xuất dữ liệu tuần tự để làm một cái gì đó giống như mydate.photo_id trao trên

Cảm ơn!

Trả lời

20

ActiveRecord có build này: http://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-c-serialize

Nếu bạn chỉ định trong mô hình của bạn mà một thuộc tính được đăng, sau đó AR minh bạch xử lý các serialization/deserialization. Khi bạn gọi accessor, nó sẽ deserialize trên bay trở về đối tượng Ruby (băm, mảng, bất cứ điều gì). Sau đó, bạn có thể sửa đổi đối tượng như bình thường, và khi bạn lưu bản ghi, nó sẽ tái sắp xếp và lưu trữ nó.

+0

Dữ liệu tuần tự hóa tốt hơn hoặc sử dụng JSON (như couchDB?) – AnApprentice

+0

Phụ thuộc vào định nghĩa của bạn tốt hơn. AR serialize chắc chắn dễ sử dụng hơn. Nhưng nếu bạn cần sử dụng dữ liệu bên ngoài ứng dụng của mình (như thông qua API bạn có thể xây dựng) thì tốt hơn nên tự tuần tự hóa bằng JSON, vì người dùng API của bạn có nhiều khả năng biết phải làm gì hơn với YAML. – tfe