Los rieles que no reciben valor de las asociaciones -- ruby-on-rails camp Relacionados El problema

Rails not getting value from associations


-3
vote

problema

Español

Tengo 2 tablas nombradas: order_items y orders en el esquema. A continuación se muestra la muestra de mi esquema

  create_table "orders", force: :cascade do |t|  t.string "first_name"  t.string "last_name"  t.datetime "created_at", null: false  t.datetime "updated_at", null: false  t.string "token"  t.decimal "sub_total"  t.string "mobile"  t.string "address"   

y

  create_table "order_items", force: :cascade do |t|  t.integer "order_id", null: false  t.integer "item_id", null: false  t.integer "quantity", null: false  t.decimal "price", precision: 15, scale: 2, null: false  t.datetime "created_at", null: false  t.datetime "updated_at", null: false end   

para modelos,

order.rb

  has_many :order_items   

order_item.rb

  belongs_to :order belongs_to :item   

Pensé que hubiera podido obtener Order.orderitem.quantity con esta asociación, pero no puedo conseguirlo. Obtengo un error como undefined method 'orderitems' for nil:NilClass

Original en ingles

I have 2 tables named : order_items and orders in schema. Following is sample of my schema

create_table "orders", force: :cascade do |t|  t.string "first_name"  t.string "last_name"  t.datetime "created_at", null: false  t.datetime "updated_at", null: false  t.string "token"  t.decimal "sub_total"  t.string "mobile"  t.string "address" 

and

create_table "order_items", force: :cascade do |t|  t.integer "order_id", null: false  t.integer "item_id", null: false  t.integer "quantity", null: false  t.decimal "price", precision: 15, scale: 2, null: false  t.datetime "created_at", null: false  t.datetime "updated_at", null: false end 

For Models,

order.rb

has_many :order_items 

order_item.rb

belongs_to :order belongs_to :item 

I thought I would have been able to get Order.orderitem.quantity with this association, but not able to get it. I get error as undefined method 'orderitems' for nil:NilClass

  
       
       

Lista de respuestas

0
 
vote
vote
La mejor respuesta
 

Pruebe Order.first.order_items Esto devolverá todos los artículos del pedido para el primer pedido

entonces puedes hacer un bucle a través de ellos

  Order.first.order_items.each do |item|   item.quantity   .... end   

o sacar el artículo con el índice

  items = Order.first.order_items items[0].quantity   
 

try Order.first.order_items this will return all the order items for first order

then you can loop through them

Order.first.order_items.each do |item|   item.quantity   .... end 

or take the item out with index

items = Order.first.order_items items[0].quantity 
 
 

Relacionados problema

23  ¿Cómo puedo arreglar el error 'STORY DE VISTA DE VISUALIZACIÓN INSCRIBIDA' CON EL COMPLEMENTO DE EXCEXNOTIQUERO EN RAILS 2.1?  ( How do i fix unprocessed view path found error with exceptionnotifier plugin i ) 
Después de actualizar un sitio web de RAILS 1.2 a 2.1, el excepcionnotifier plugin ya no funciona, quejándose de este error : ActionView :: TemplateFinde...

1  Ruby en los rieles: usando matrices con LINK_TO  ( Ruby on rails using arrays with link to ) 
Tenía curiosidad sobre cómo usar matrices en el método Link_TO en Ruby en rieles, por ejemplo: controlador: def index @test = [1,2,3] end Ver: ...

6  ¿Mejor manera de probar RJs en las especificaciones del controlador RSPEC?  ( Best way to test rjs in rspec controller specs ) 
¿Cuál es la mejor manera de asegurarse de que se genere los RJs adecuados en una acción de controlador? Por ejemplo, quiero asegurarme de que un div se resa...

7  ¿Dónde almacena los rieles datos creados al guardar los objetos de ActiveRecord durante las pruebas?  ( Where does rails store data created by saving activerecord objects during tests ) 
¿Dónde almacena los rieles los datos creados al guardar los objetos de ActiveRecord durante las pruebas? Pensé que sabía la respuesta a esa pregunta: obviam...

16  ¿Modificar las ID de la base de datos de las consola de los carriles?  ( Modifying database ids from rails console ) 
Tengo una base de datos pequeña y he estado agregando entradas a través de una página de rieles. Yo "destruido" una de las entradas y ahora mi secuencia de id...

22  SystemExit frecuente en Ruby al hacer llamadas HTTP  ( Frequent systemexit in ruby when making http calls ) 
Tengo un sitio web de Ruby On Rails que hace llamadas HTTP a un servicio web externo. Acerca de una vez al día Obtengo un correo electrónico de error System...

55  Implementación de "Recordarme" en una solicitud de rieles  ( Implementation of remember me in a rails application ) 
My Rails-App tiene una casilla de inicio de sesión con una casilla de verificación "Recordarme". Los usuarios que comprueban esa casilla deben permanecer cone...

0  Las pruebas unitarias de rieles fallan debido a una restricción única en Schema_Migrations  ( Rails unit tests fail because of unique constraint on schema migrations ) 
Estoy tratando de ejecutar rake test:units y sigo recibiendo esto: Mysql::Error: Duplicate entry '2147483647' for key 1: INSERT INTO `ts_schema_migration...

11  ¿Cómo ejecuto las pruebas de integración de rieles sin dejar caer los contenidos de DB?  ( How do i run rails integration tests without dropping db contents ) 
He escrito algunas pruebas de integración que me gustaría correr contra una copia de mi base de datos de productos antes de presionar a la producción. Esto me...

14  Ruby On Rails User Management Motor / Framework? (con páginas web)  ( Ruby on rails user management engine framework with web pages ) 
Hay bastantes POST / RECOMENDACIONES RE RAILS DE AUTORIZACIÓN DE RAILS. Sin embargo, lo que estoy preguntando aquí es si hay un rubí popular / buen rubí en el...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos