Frage

OK, hier mein Problem: Ich habe ein Tabel in einem Radius-System. Um einem Hotspot-Benutzer zu aktivieren, benötige ich in dieser Tabelle zwei verschiedene Datensätze. Der Datensatz enthält den Fields -Benutzer, Attr, OP, Wert Erst Datensatz: Attribut muss Kennwort sein (dieser Datensatz ist nur für das Kennwort hier) und Wert ist das Kennwort selbst. Zweiter Datensatz: Attribut muss so etwas wie die max-verurteilte Sitzung sein. Ein Wert ist in Sekunden einen Wert. Deshalb füge ich dies als verschachtelte Attribute zu meinen Controller -Kunden hinzu. In neuer mache ich das:

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

OK, meiner Ansicht nach habe ich das im Moment:

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

In meinem Controller habe ich zwei Radchecks gebaut, so dass dieser Teil zweimal gezeigt wird. Das ist Status, aber ich möchte so etwas auf meiner Website haben

<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>

Somone hat die Idee, das zu erkennen. Vielleicht muss ich die indizierten Felder selbst schreiben, aber wie kann ich das erreichen? danke für die Hilfe....

War es hilfreich?

Lösung

Angenommen, Sie verwenden ACCECTS_NEST_ATTRIBUTES_FOR: RadChecks in Ihrem Client -Modell.

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

Erstellen Sie als nächstes ein partielles namentliches radcheck_fields.html.erb mit dem folgenden Code.

<% 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 %>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top