tengo un modelo de lugar y me quieren hacer estorieles encontrar o crear basan en dos campos
Venue.find_or_create_by_
pero yo sólo quieren un nuevo lugar a crearse si uno con el mismo nombre y la fecha aún no existir
Por ejemplo
=> Venue(id: integer, location: string, showdate: datetime, created_at: datetime, updated_at: datetime)
escenario es único y tiene que ser creado si la ubicación y el showdate no están presentes en la db
Por Dios, Rails y particularmente Ruby continuamente me sorprende. ¿Cómo sabe lo que significa esa función? ¿Hay algún tipo de capturar toda la función find_or_create_by_ * que la interpreta? – Jordan
En realidad, no lo olvides, acabo de echar un vistazo a la fuente de Rails: Rails usa una función method_missing que hace una expresión regular del método llamado y lo descompone. Es genio Si alguien más está interesado, mira active_record/base.rb en la fuente de Rails. – Jordan
También es aceptable pasarlos como argumentos. Venue.find_or_create_by (: location => location,: showdate => showdate) –