Pregunta

Ok, aquí mi problema: tengo un Tabel en un sistema de radio. Para habilitar un usuario de hotspot, necesito dos registros diferentes en esta tabla. El registro tiene el usuario de los campos, attr, op, valor del primer registro: el atributo debe ser contraseña (este registro es solo para la contraseña aquí) y el valor es la contraseña en sí. Segundo registro: el atributo tiene que ser algo como la sesión de Max-Allowed y el valor es un entero en segundos. Así que agrego esto como atributos anidados a mis clientes de controladores. En nuevo hago eso:

def new
@client = Client.new
2.times do
  radcheck = @client.radchecks.build
end`
respond to........
end`

Ok, en mi opinión tengo esto en este momento:

f.fields for :radchecks do |rcbuilder|
<p><%= rcbuilder.label :username %><br /><%= rcbuilder.text_field :username %>
for all fields .....
end

En mi controlador construí dos radchecks, por lo que esta parte se muestra dos veces. Ese es el estado, pero quiero tener algo como esto en mi sitio web

<first occurence of that form>
<%= rcbuilder.hidden_field :attr, :value => "password" %>
<%= rcbuilder.hidden_field :value, :value => @generated_password %>
<end first occurence>
<second occurence of that form>
<%= rcbuilder.hidden_field :attr, :value => "Max-Allowed-Session" %>
<%= rcbuilder.label :value, 'Time in hours' %><%= rcbuilder.text_field :value %>
<end second occurence>

Someone tiene una idea para darse cuenta de eso. Tal vez tengo que escribir los campos indexados yo mismo, pero ¿cómo puedo lograrlo? gracias por la ayuda....

¿Fue útil?

Solución

Suponiendo que está utilizando Acepts_nested_Attributes_For: Radchecks en su modelo de cliente.

<% index=1 %>
f.fields for :radchecks do |rcbuilder|
  <%= render :partial=>'radcheck_fields', :locals=>{:rcbuilder=>rcbuilder, :index=>index}%>
<% index+=1 %>
end

A continuación, cree un parcial llamado radcheck_fields.html.erb con el siguiente código.

<% if index.eql?(1) %>
  <%= rcbuilder.hidden_field :attr, :value => "password" %>
  <%= rcbuilder.hidden_field :value, :value => @generated_password %>
<% else %>
  <%= rcbuilder.hidden_field :attr, :value => "Max-Allowed-Session" %>
  <%= rcbuilder.label :value, 'Time in hours' %><%= rcbuilder.text_field :value %>
<% end %>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top