Hi,
ich stelle gerade meine kleine Anwendung auf Rails 2.1.0 um (vorher
Rails 1.2.3). Jetzt stolper ich über eine alltägliche Situation -
update_attributes.
Mein Modell "User" hat u.a. ein Feld "Bemerkung", welches ich erst im
Controller mit:
params[:user][:bemerkung] = @user.bemerkung << "bearbeitet am " <<
Time.now << params[:chat]
bearbeite.
Edit-View:
<% form_for(@user) do |u| %>
...
</tr><tr>
<th rowspan=2>Bemerkung</th>
<td colspan=3><%= simple_format(@user.bemerkung) %></td>
</tr></tr>
<td colspan=3><%= text_area_tag 'chat', nil, :size => "75x10"
%></td>
</tr>
...
<%= u.submit "Speichern" %>
<% end %>
Controller-Update
def update
@user = User.find(params[:id])
params[:user][:bemerkung] = @user.bemerkung << "bearbeitet am " <<
Time.now << params[:chat]
if @user.update_attributes(params[:user])
flash[:notice] = 'User erfolgreich gespeichert.'
...
end
end
Bisher lief das alles prima, mit update_attributes wurde auch das Feld
"Bemerkung" geupdatet.
Seit der Umstellung geht dies nicht mehr, er speichert alle veränderten
Felder, nur die Bermerkung nicht mehr :/
Ich habe inzwischen auch mal ein hidden_field ausprobiert, da speichert
ers zwar in die DB (MySql), jedoch müllt er mir damit die Bemerkung bei
jeder fehlerhaften Validierung zu.
Bemerkung hat aber keine Validierung *anmerk*
Das Internet hab ich jetzt durchwühlt ohne Ergebnis. Wo liegt mein
Denkfehler?
Grüsse
Dani
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug