Cómo entender mejor las rutas de Rails

[Creo que te has dado vuelta un par de preguntas aquí. Primero, generalmente no pasa una clave principal al crear una nueva instancia de modelo. En la mayoría de los casos, se generará para usted como un entero secuencial y se asignará automáticamente.

En segundo lugar, está la llamada a Product.create, que espera un hash de atributos que deberían usarse en la creación del nuevo registro y devuelve la nueva instancia del modelo. Por lo general, leería algo más como:

@product = Product.create(params[:product])

En tercer lugar y para su pregunta, puede crear una ruta personalizada como la que mencionó aquí. Si está seguro de que su atributo : blah será único por instancia de Producto, puede crear la ruta personalizada o, como Claudiu menciona, puede redefinir el identificador como : blah . En el caso: no se garantiza que blah sea único o, si no lo sabe, considere usar algo como la gema FriendlyId para crear babosas para instancias de modelos.

Cuarto, comprenda que para cualquier instancia de modelo, #object_id y #id no son lo mismo. Vea los documentos para comprender las diferencias.

hola, params [: id] por defecto es id, puedes anular los params y buscar cualquier otro campo en el modelo
Por ejemplo: params [: id] = Model.find_by (name: name)
def to_param
#add lógica aquí
fin
además,
Rieles de enrutamiento desde afuera hacia adentro

More Interesting

¿Cómo realizan las personas la implementación automatizada de las aplicaciones web de Python en AWS?

Cómo crear una aplicación web usando WordPress sin codificar simplemente arrastrando y soltando

Aplicaciones web? ¿Qué es la aplicación de una sola página?

Cómo convertir formatos de video / audio en la aplicación web NodeJS

¿Son las aplicaciones basadas en la web el futuro?

¿Qué pila debo usar para crear una aplicación web con una aplicación móvil separada que use los mismos marcos de backend y frontend?

¿Cuáles son los problemas comunes de escalabilidad con las aplicaciones de red / web?

¿Spring Framework proporcionará todas las características que serán suficientes para desarrollar una aplicación web en tiempo real?

Entonces, estoy usando AJAX para hacer algo dentro de mi función, pero ¿cómo podría evitar que otros vean cuáles son las variables y dónde están publicando?

¿La construcción y el lanzamiento de aplicaciones exitosas lo hacen adecuado para un rol de gerente de producto en una empresa?

Cómo ejecutar un script PHP un tiempo específico que se almacena en la base de datos MySQL

Estoy creando una aplicación web con Ruby on rails. ¿Cómo puedo permitir que un usuario agregue o elimine etiquetas (palabra clave simple) en la parte inferior de las imágenes?

¿Qué plataformas de alojamiento han utilizado las startups indias para sitios basados ​​en Django y cómo funcionan y escalan las plataformas de alojamiento?

¿Cuál es la diferencia entre un firewall de aplicación web y un firewall de red normal? ¿Protegen cosas diferentes?

¿Cómo se usa la programación reactiva funcional para aplicaciones web?