sql >> Database >  >> RDS >> PostgreSQL

Rails negeert constanten in SQL SELECT-instructie

Waarom denk je dat je constant is er niet? Uit de fijne handleiding :

Benadruk de mijne. Dus als je dit zegt:

a = TableName.find_by_sql("SELECT id, name, 1 AS constant FROM table_name")

dan kun je a.first.constant . zeggen en iets terugkrijgen. Merk op dat de gebruikelijke inspect uitvoer die u waarschijnlijk in de console bekijkt, bevat geen constant als AR's inspect kent alleen tabelkolommen; je ziet dit soort dingen in de console:

[#<TableName id: 6, name: "Pancakes">, ...]

maar de objecten zullen reageren op constant oproepen met '1' s; ja, het zullen waarschijnlijk strings zijn, je moet zelf de typeconversies uitzoeken.




  1. Problemen met oneindig tijdbereik in Rails

  2. PHP-aanmeldingsformulier met HTML-formulier

  3. Omgekeerde tekenreeks woord voor woord met behulp van SQL

  4. Hoe de array-sleutels in php te controleren om array-waarden op te slaan in mysql