viernes, 7 de diciembre de 2018

[Django 2.1] Agregar Usuario que crea un registro en el modelo


 #Django #tutorial #Elearning #Web #Desarrollo #PostgreSQL #Migrations

En esta nueva entrada, voy a explicar cómo agregar un atributo llamado creadopor en el modelo, que luego se convertirá en el campo creadopor de la tabla (modelo) Categoria.
Te he marcado los cambios que se debe hacer en el modelo.



Luego de eso debes crear una migración
manage.py makemigrations

Si ya tienes registros en la base de datos, el orm de Django te pedirá que des valor del nuevo campo para los registros existentes.


Yo le di el valor de 1, ya que el campo es de tipo numérico, porque ahí se graba el id del usuario y el usuario 1 (en mi caso) es el admin



Y finaliza el comando makmigrations



Para ver el estado de la migración, lo haces con manage.py showmigrations


Puedes ver que está una migración sin aplicar, llamada 006_categoria_creadopor en la aplicación catalogos
Para ver la instrucción que ejecutará django sobre postgresql, se hace con el comando
manage.py sqlmigrate [nombreapp]  [id de migracion]
en nuestro caso sería
manage.py sqlmigrate catalogos 0006_categoria_creadopor


Ya en esta etapa, puedes realizar la migración con el comando
manage.py migrate


Si consultas el registro de las categorías en la base de datos, podrás ver ya el nuevo campo con el valor escogido para los registros ya existentes.



Ahora sólo faltaría decirle a Django que cuando se cree una nueva categoría, se tome el id del usuario activo. Para esto hay que sobreescribir el evento form_valid de la vista create de categoría.



Y con eso ya está listo, puedes hacer las pruebas insertando registros y ve cómo se van agregando. 
En mi caso, entré al sistema con otro usuario y creé una nueva categoría, teniendo como salida desde la base de datos lo siguiente:


Y puedes ver cómo le asignó el id de ese otro usuario.


Si tienes dudas, favor contactarme por medio de este blog o los enlaces de mis redes sociales.


Related Posts:

  • Artículos y Tutoriales sobre Python #Tutoriales #Python #Tip #Teach @debsconsultores #django #flask Hola a todos.  Este post es para anunciarles que a partir de hoy estaré publicando periódicamente un artículo sobre python o django o similares. Tratar… Read More
  • [Django 2.1] Agregar Usuario que crea un registro en el modelo  #Django #tutorial #Elearning #Web #Desarrollo #PostgreSQL #Migrations En esta nueva entrada, voy a explicar cómo agregar un atributo llamado creadopor en el modelo, que luego se convertirá en el campo creadopor … Read More
  • [Video] Common Table Expression - SQL Server #Video #CTE #SQLServer #Online #Free #TSQL via +DEBS Consultores  @DEBSConsultores (adsbygoogle = window.adsbygoogle || []).push({}); En esta ocasión dejo una pequeña explicación sobre CTE o Common Ta… Read More
  • Manejo de usuarios en PostgreSQL #Create #User #PostgreSQL #DataBase #psql #createuser En esta ocasión, como preparación para el curso de Administración de PostgreSQL (próximamente) veremos cómo crear un usuario para este excelente gestor de base de dat… Read More
  • Mostrar Explorador de Soluciones Visual Studio#VisualStudio #VS #DotNet #Project #ExploradorSoluciones #Multi #Project #Tutorial En algunas ocasiones requerimos crear más de un proyecto dentro de la solución, especialmente si estamos siguiendo el curso de Programación P… Read More

0 comentarios:

Publicar un comentario

¿Tienes algún comentario? ¿Qué te ha parecido este artículo? Cuéntalo.

 
>