One-To-Many Problem

Fragen zur Konfiguration & Abfragetechniken der Datenbank

One-To-Many Problem

Beitragvon moonglum am 31.08.2009, 22:11

Guten Abend,

Ich habe zwei Models:
User belongs_to :user_level
UserLevel has_many :users

Erstellen, anzeigen und alles klappt wunderbar. Ich kann auch den Namen updaten usw. Nun kommen wir zum Problem:

Code: Alles auswählen
@user = User.find(params[:id])
@user.update_attribute(:user_level, UserLevel.find(:first, :conditions => "rank = #{@user.user_level.rank - 1}"))
if @user.save
  UserLevel.find(:all).each do |a|
    puts "#{a.name}"
    a.users.each do |b|
      puts " #{b.username}"
    end
  end
  flash[:notice] = "Der Benutzer #{@user.username} wurde zum #{@user.level} befördert."
else
  flash[:error] = "Something went wrong"
end


Ergebnis:
Die Seite wird reloadet und die Index Seite wird angezeigt - der User ist nicht befördert worden (dafür soll die Funktion sein).
Im Flash steht jedoch:
Der Benutzer testMeister wurde zum Meister befördert.
(das war das Ziel)

Im Log steht:
User
testMeister
Meister

Woran könnte das liegen?
Benutzeravatar
moonglum
 
Beiträge: 1
Registriert: 04.12.2007, 08:06

Zurück zu M - Model

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron