Dudas sobre scaffold en Rails 2.1.0

Saludos a toda la lista, antes que nada pido disculpas si pregunto algo
obvio, juro que busque mucho y no
encontre. Estoy empezando con ror y no puedo darme cuenta como usar
scaffold en rails 2.1.0 y me encuentro que
mucha info hay sobre scaffold pero para versiones anteriores, el
dinamico que le llamaban. Segun entendi a
partir de 2.x no va mas y hay que usar ruby script/generate scaffold
NombreTabla campo:tipocampo campo2:tipocampo2.
Hasta aca todo bien , lo que no puedo es darle atributos a los campos,
probe por ej:

campo:string , null=>false campo2:string por ejemplo y no quiere andar.

Entonces, preguntas

uno:

Cómo darle atribuotos a los campos , ejemplo que no permita nulos, tamaño del
campo, etc?

dos:
Si despues quiero modificar/agregar un campo de la tabla, como hago
para no perder los cruds ? Tengo que hacer
todo de nuevo?
Probe hacer scaffold nombretabla sin mas paramentros y no me funciono

tres:

Por ahí leí que se hacia scaffold con un solo campo y despues se modificaba
el migrate, lo intente y los cruds
no se enteraron de que habia agregado un campo a mi tabla.

Ultimo:

Tambien leí algo sobre que el scaffold era algo como una cuestion de
“marketing” para vender RoR a quienes
recien se acercaban, pero que ninguna aplicacion “en serio” lo usaba, si
bien esto era una polemica, me llamo
la atencion porque tenia la firme idea que se podian usar bien a partir
de la separacion de modelo
-vista-controlador y el uso de hojas de estilo. Bueno, si alguien puede
comentarme algo lo agradeeria.

Desde ya agradezco y pido disculpas por lo largo.

Saludos.

Te contesto desde mi nula experiencia con ror. Si meto la pata espero
correcciones.

2008/7/15 cmlopez [email protected]:

uno:

Cómo darle atribuotos a los campos , ejemplo que no permita nulos, tamaño del campo, etc?

el definir la tabla en el script/generate es para ganar un poco de
tiempo. Esta acción te crea de forma automatica el modelo, el
controlador, las vistas y la migración. Si necesitas añadirle algo mas
de chicha, modificas el fichero de la migración y añades lo que
necesites.

dos:
Si despues quiero modificar/agregar un campo de la tabla, como hago para no perder los cruds ? Tengo que hacer
todo de nuevo?
Probe hacer scaffold nombretabla sin mas paramentros y no me funciono

Cuando quieres añadir un nuevo campo tienes 2 soluciones:

  1. si no has avanzado mucho, borra y genera de nuevo los modelos,
    vistas, controlador y
    migración.2. Genera una migración “script/generate migration add_new_col”, edita
    el fichero, añade las acciones para el up y el down y modifica a pelo
    los archivos que tengas que cambiar (vistas …)

tres:

Por ahí leí que se hacia scaffold con un solo campo y despues se modificaba el migrate, lo intente y los cruds
no se enteraron de que habia agregado un campo a mi tabla.

El scaffold dinamico ha desaparecido por lo tanto lo suyo es poner en
linea de comandos todos los campos, porque de forma estos se añadiran
al CRUD de forma automática. Si añades campos a posteriori el CRUD no
se enterará. Tendrías que ir al paso 2

Ultimo:

Tambien leí algo sobre que el scaffold era algo como una cuestion de “marketing” para vender RoR a quienes
recien se acercaban, pero que ninguna aplicacion “en serio” lo usaba, si bien esto era una polemica, me llamo
la atencion porque tenia la firme idea que se podian usar bien a partir de la separacion de modelo
-vista-controlador y el uso de hojas de estilo. Bueno, si alguien puede comentarme algo lo agradeeria.

El scaffold dinámico o scaffold marketiniano ya no existe. Antes se
usaba como primera aproximación, para tener en 1 minuto las páginas
CRUD para empezar a trabajar y a no ser que fuera una aplicación muy
muy simple nadie lo usaba para
producción.
Lo que pasa es que es muy efectista y eso de monta tu libro de cocina
en 1 minuto hace que tengas muchos apoyos y detractores a partes
iguales.

Si me he metido la gamba espero correcciones.

Un saludo.

bueno en realidad el scaffold siempre los uso en mis proyectos debido a
que
no existe una aplicacion web donde haya que incluir un registro,
modificar,
eliminar y/o mostrar… Por lo tanto para ahorrarme tiempo siempre uso
los
CRUD que me genera el scaffold y despues de acuerdo a los requerimientos
del
cliente quito o agrego metodos a las clases y en caso de que no requiera
algun CRUD de alguna clase simplemente lo borro del controller y ese
action
no se ejecutara y listo caso cerrado…

Y no estoy de acuerdo con que el scaffold era algo como una cuestion de
“marketing” para vender RoR, es mas para mi es una ventaja enorme que
tiene
RoR delante de otros framework como simphony y kumbia para PHP, Struts y
hibernate para JAVA, entre otros…
**

El día 15 de julio de 2008 1:43, Jose Antonio R.
[email protected]
escribió: