Campo hash serializado e formulário simples
Tenho o seguinte.
class Page < ActiveRecord::Base
belongs_to :category
serialize :fields
end
O valor defields
dependerá da categoria. Mas como um exemplo;
{"address" => "8 finance street, hong kong",
"founded" => "1973"}
Neste exemplo, a categoria definiu"address"
e"founded"
como os campos personalizado
O que eu quero é dizer;
= simple_form_for(@page) do |f|
= f.association :category
- f.object.category.fields.each do |field|
= f.input field.name
Mas eu preciso fazer algo mágico para lidar com o fato de que@page.founded
não é válid
Em vez disso, eu deveria estar olhando para@page.fields["founded"]
.
Alguma sugestão
Atualizar
Estou um pouco mais perto
- if f.object.category
- f.object.category.fields.each do |field|
= f.input field.name do
= text_field_tag "post[fields][#{field.name}]", f.object.fields[file.name]
gora é necessário tornar este DRYer (não quero especificar o nome do objeto
Vou ver se consigo escrever uma extensão de formulário simples decente para iss