IIC2143 / Syllabus-2024-1

56 stars 3 forks source link

POST matches #77

Closed MartinChaud closed 8 months ago

MartinChaud commented 8 months ago

Hola, llevo desde el sabado con el siguiente problema al hacer post matches. Asumo que es porque el codigo espera recibir un teamA y teamB de tipo references y recibe el id. Lo mejor que he logrado hacer es params.require(:match).permit(:teamA_id, :teamB_id, :state, :result), donde funciona si recibe un response body donde :teamA_id y :teamB_id (que claramente no sirve). No se que hacer, llevo desde el sábado con este error.

imagen

MathiasPrett commented 8 months ago

Tengo el mismo problema. Al final las columnas se llaman teamA_id y teamB_id pero los tests están hechos para que el request de post matches reciba solo los nombres teamA y teamB. No he podido solucionarlo todavia, pero creo que se podría usando la opción de darle un alias a esos atributos, cosa que sea equivalente llenar esos campos por ambos nombres.

Edit: creo que no se puede asi, hay que verlo a nivel de controlador de match nomas parece...

jtvaldivia commented 8 months ago

Les cuento que se vio este problema en al ayudantia y esta subido el ppt de esta.

MartinChaud commented 8 months ago

No que el que se vio en la ayudantía fue PATCH y no POST?

jtvaldivia commented 8 months ago

Como tienes definido el teamA? deberia ser una referencia?

MartinChaud commented 8 months ago

En la migración lo tengo definido como t.references :teamA, null: false, si a eso te refieres.

jtvaldivia commented 8 months ago

Ya, creo que ahi esta el problema. Debes de alguna manera entregarle la referencia de ese equipo y no el id. Como hacerlo ahi queda a tu libertad. Como pista en el controller puedes ocupar el id para identificar ese equipo.