Ich erhalte den folgenden Fehler in meiner Rails-Anwendung:Rails Fehler: "Vergleich der Benutzer mit Benutzer fehlgeschlagen"
comparison of User with User failed
Der entsprechende Abschnitt meiner Controller wie folgt aussieht:
class AssessmentsController < ApplicationController
before_filter :authenticate_user!
respond_to :html, :xml, :js, :pdf
def index
@user = current_user
@account = Account.find(@user.account_id)
@assessments = Assessment.all
respond_with @assessments
end
der entsprechende Abschnitt meiner Sicht sieht das so:
<%= form_for(@account) do |a| %>
<%= a.fields_for :users, @account.users.build do |u| %>
....
<%= a.submit "Sign-up", :class => "button", :disable_with => "Saving..." %>
<% end %>
<h1>Current users</h1>
<% for @user in @account.users.sort! { |b,a| a.id <=> b.id } %>
<%= render :partial => 'user' %>
<% end %>
der Fehler scheint um den for @user in @account.users.sort!
Abschnitt nach dem Fehlermodell zu stammen, aber das Entfernen scheint es die Ergänzung der @account.users.build
in der fields_for Abschnitt sein, die es erstellt (aber ich brauche dies, wie ich möchte der Benutzer in der Lage sein, einen neuen Benutzer für erstellen dieser Account. Kann mich jemand aufklären, was das bewirkt?
Ich habe den Ausdruck "Bomben" schon lange nicht mehr gehört, aber ich liebe es immer noch. – miked
Es sieht so aus, als ob er nur nach absteigender ID sortiert, also '@ account.users.order ('id DESC')' ist wahrscheinlich der einfachste Weg, es zu tun. – James
@veraticus - danke mann. Große Stackoverflow-Antwort -> richtig, prägnant und klar. –