Documente Academic
Documente Profesional
Documente Cultură
manage.py
una utilidad de línea de comandos que te permite interactuar con este proyecto de
DJango de varias maneras.
mysite/__init__.py: un archivo vacío que le dice a python que este directorio debe
de considerarse un paquete de python.
**********************************
mysite/ *
manage.py *
mysite/ *
__init__.py *
settings.py *
urls.py *
wsgi.py *
**********************************
-----------------------------------------------------------------------------------
-------------------
ACTIVAR EL ENTORNO VIRTUAL
Nos movemos a la carpeta donde esta el entorno virtual
cd Documentos/
ls
cd TrabajosFabi/
ls
cd django/
ls
cd mientornomivirtual/
ls
cd bin/
source activate
cd ..
cd ..
cd mi_proyecto
python manage.py runserver
-----------------------------------------------------------------------------------
-------------------
EL SERVIDOR DE DESARROLLO
Para verificar que el proyecto de Django funciona, cambie de directorio externo y
ejecute los siguientes comandos:
*******************************
$ python manage.py runserver *
*******************************
********
ctrl c *
********
-----------------------------------------------------------------------------------
-------------------
PROYECTOS VS APLICACIONES
Si esta es la primera vez que utiliza Django, tendrá que hacerse cargo de ciertas
configuraciones iniciales. Concretamente, tendrá que autogenerar un código que
establezca un Django project – un conjunto de ajustes para una instancia de Django,
incluida la configuración de la base de datos, opciones específicas de Django y
configuraciones específicas de la aplicación.
**********************************
polls/ *
__init__.py *
admin.py *
apps.py *
migrations/ *
__init__.py *
models.py *
tests.py *
views.py *
**********************************
En esta estructura se albergará la aplicación de encuestasr(polls)
**********************************************************
https://docs.djangoproject.com/en/2.2/intro/tutorial02/ * pagina de donde estoy
haciendo el tutorial
**********************************************************
https://docs.djangoproject.com/es/2.2/intro/tutorial01/
SETTINGS.PY
EN este archivo que se encuentra en el folder del proyecto, en la sección
'INSTALLED_APPS'
contiene los nombres de todas las aplicaciones de Django que están activadas en la
instancia de Django.
Las aplicaciones se pueden usar en múltiples proyectos, y puede emáquetarlas y
distribuirlas para que otras personas las usen en sus proyectos.
*
***********************************************************************************
* django.contrib.admin - El sitio de administración. Lo usarás en breve.
*
* django.contrib.auth - Un sistema de autenticación.
*
* django.contrib.contenttypes - Un marco para tipos de contenido.
*
* django.contrib.sessions - Un marco de sesión.
*
* django.contrib.messages - Un marco de mensajería.
*
* django.contrib.staticfiles - Un marco para administrar archivos estáticos.
*
*
***********************************************************************************
CREANDO MODELOS
***********************************************************************************
*******************************
Filosofía
Esto incluye las migraciones; a diferencia de Ruby On Rails, por ejemplo, las
migraciones se derivan completamente de su archivo de modelos, y son esencialmente
un historial que Django puede recorrer para actualizar el esquema de su base de
datos para que coincida con sus modelos actuales.
***********************************************************************************
*******************************
CREANDO MODELOS EN LA APP 'POLLS'
En la app, se van a crear dos modelos
*Question
Va a tener question(pregunta) y publication date (fecha de publicación)
*Choice
Va a tener dos campos
EL texto de 'choice' (elección) y 'vote tally' (recuento de votos)
*********************************************************************************
polls/models.py *
--------------------------------------------------------------------------------*
from django.db import models *
*
*
class Question(models.Model): *
question_text = models.CharField(max_length=200) *
pub_date = models.DateTimeField('date published') *
*
*
class Choice(models.Model): *
question = models.ForeignKey(Question, on_delete=models.CASCADE) *
choice_text = models.CharField(max_length=200) *
votes = models.IntegerField(default=0) *
*********************************************************************************
-----------------------------------------------------------------------------------
------------------------------
El nombre de cada instancia de campo (por ejemplo, question_text o pub_date) es el
nombre del campo, en formato - fácil de usar para la máquina. Usarás este valor en
tu código de Python, y tu base de datos lo usará como el - nombre de la columna.
-
Puede usar un primer argumento posicional opcional para un Campo para designar un
nombre legible para el ser humano. Se usa en un par de partes introspectivas de
Django y se duplica como documentación. Si este campo no se proporciona, Django
usará el nombre legible por la máquina. En este ejemplo, solo hemos definido un
nombre legible por humanos para Question.pub_date. Para todos los demás campos de
este modelo, el nombre legible por máquina del campo será suficiente como su nombre
legible por humanos.
Un campo también puede tener varios argumentos opcionales; En este caso, hemos
establecido el valor predeterminado de los votos en 0.
Finalmente, note que se define una relación, usando ForeignKey. Eso le dice a
Django que cada elección está relacionada con una sola pregunta. Django es
compatible con todas las relaciones de base de datos comunes: muchos a uno, muchos
a muchos y uno a uno.
[many-to-one, many-to-many, and one-to-one]
-----------------------------------------------------------------------------------
-------------------
ACTIVANDO MODELOS
Esa pequeña parte del código de modelo le da a Django mucha información. Con ello,
Django es capaz de:
Cree un esquema de base de datos (sentencias CREATE TABLE) para esta aplicación.
Cree una API de acceso a la base de datos de Python para acceder a los objetos de
Preguntas y Opciones.
Pero primero debemos decirle a nuestro proyecto que la aplicación de encuestas está
instalada.