-
Notifications
You must be signed in to change notification settings - Fork 0
/
bbdd_postgreSQL.txt
109 lines (79 loc) · 3.22 KB
/
bbdd_postgreSQL.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
django trata las bases de datos como Clases.
Para crear una base de datos es necesario crear una clase del tipo Model
* Bajamos el gestor de postgre desde la pagina oficial
https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
1 - Creamos la base de datos desde el pgAdmin
2 - Instalamos la libreria psycopg2 en nuestra carpeta del proyecto
pip install psycopg2
3 - Cambiamos en settings.py los datos de la base de datos
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'ArticulosCLientes',
'USER': 'posgres',
'PASSWORD': '12345',
'HOST': 'localhost',
'DATABASE_PORT': '5432',
}
}
4- Luegocreamos un proyecto con una aplicacion desde la consola
django-admin startproject TiendaOnline
5 - Creamos la aplicacion, que nos creara otra carpeta con varios archivos, el archivo con el que trabajaremos el models.py donde debemos crear la base de datos
python manage.py startapp gestionPedidos
6 - Creamos en el archivo models.py las clases
class Clientes(models.Model):
nombre = models.CharField(max_length=20)
direccion = models.CharField(max_length=30)
email = models.EmailField()
telf= models.CharField(max_length=10)
7 - En el archivo settings.py debemos registrar la nueva aplicacion creada (gestionPedidos)
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'gestionPedidos',
]
7.1 Podemos comprobar con el siguiente comando que todo esta bien
python manage.py check gestionPedidos
System check identified no issues (0 silenced).
8 - Creamos la base de datos
python manage.py makemigrations
Migrations for 'gestionPedidos':
gestionPedidos\migrations\0001_initial.py
- Create model Articulos
- Create model Clientes
- Create model Pedidos
9 - Decimos a django que agregue la table creada en el paso 3
el numero al final se obtiene del paso 5
python manage.py sqlmigrate gestionPedidos 0001
10 - Por ultimo migramos la base de datos al la base de datos creada por python
python manage.py migrate
COMANDOS PARA MANIPULAR BASE DE DATOS DESDE SHELL-----------------------------------------
Debemos importar la tabla desde la clase gestionPedidos
from gestionPedidos.models import Articulos
- Crear----------------
art=Articulos(nombre='Torta', seccion='desayuno', Precio=5000)
art.save()
Otra forma
art=Articulos.objects.create(nombre='Torta', seccion='desayuno', Precio=5000)
- Leer-----------------
PAra poder ver desde el shell debemos crear una funcion del tipo __str__ en la clase que queremos ver
def __str__(self):
return f"{self.nombre}, {self.direccion}, {self.email}, {self.telf}"
Luego hacer la migraciones correspondientes
python manage.py makemigrations
python manage.py migrate
En el shell el comando seria:
Clientes.objects.filter(id=1)
Se puede filtrar por distintos valores:
Clientes.objects.filter(nombre="Cristian", telf="0981491932")
- Borrar---------------
Creamos una variable donde almacenar el articulo
artBorrar = Articulos(id=1)
artBorrar.delete()
Comparacion desde el shell: ------------------------------------------
__gte = >
__lte = <