Probleme mit AR 2.3.5, zB:Wie man den Typ des ActiveRecord-Attributs erzwingt, das zurückgegeben wird: Wählen Sie die Phrase in der Join-Tabelle aus?
users = User.all(:select => "u.id, c.user_id", :from => "users u, connections c",
:conditions => ...)
Returns, zB:
=> [#<User id: 1000>]
>> users.first.attributes
=> {"id"=>1000, "user_id"=>"1000"}
Beachten Sie, dass AR die id
des Modells kehrt als numerische gesucht, aber die user_id
des verbundenen Modell ausgewählt als String
, obwohl beide int(11)
im Datenbankschema sind.
Wie könnte ich diesen Abfragetyp besser erstellen, um Spalten von Tabellen auszuwählen, die mehrere Modelle unterstützen, und ihren natürlichen Typ anstatt String
abzurufen? Scheint so, als ob AR irgendwo dazwischen stochert. Wie könnte ich die zurückgegebenen Typen zur AR-Ladezeit zwingen und nicht auf jeden Post-hoc-Zugriff .to_i
(usw.) anheften?
Können Sie erklären, was „Verbindungen“ ist, und wie wird es den Benutzern zu tun? – kikito