Django - Creación de un proyecto
Ahora que hemos instalado Django, comencemos a usarlo. En Django, cada aplicación web que desee crear se denomina proyecto; y un proyecto es una suma de aplicaciones. Una aplicación es un conjunto de archivos de código que se basan en el patrón MVT. Como ejemplo, digamos que queremos construir un sitio web, el sitio web es nuestro proyecto y el foro, las noticias, el motor de contacto son aplicaciones. Esta estructura hace que sea más fácil mover una aplicación entre proyectos ya que cada aplicación es independiente.
Crear un proyecto
Ya sea que esté en Windows o Linux, solo obtenga una terminal o un cmd y navegue hasta el lugar donde desea que se cree su proyecto, luego use este código:
$ django-admin startproject myproject
Esto creará una carpeta "myproject" con la siguiente estructura:
myproject/
manage.py
myproject/
__init__.py
settings.py
urls.py
wsgi.py
La estructura del proyecto
La carpeta "myproject" es solo el contenedor de su proyecto, en realidad contiene dos elementos:
manage.py- Este archivo es una especie de django-admin local de su proyecto para interactuar con su proyecto a través de la línea de comando (iniciar el servidor de desarrollo, sincronizar db ...). Para obtener una lista completa de comandos accesible a través de manage.py, puede usar el código:
$ python manage.py help
The “myproject” subfolder- Esta carpeta es el paquete de Python real de su proyecto. Contiene cuatro archivos:
__init__.py - Solo para Python, trate esta carpeta como paquete.
settings.py - Como su nombre indica, la configuración de su proyecto.
urls.py- Todos los enlaces de su proyecto y la función a llamar. Una especie de ToC de tu proyecto.
wsgi.py - Si necesita implementar su proyecto sobre WSGI.
Configuración de su proyecto
Su proyecto está configurado en la subcarpeta myproject / settings.py. A continuación se muestran algunas opciones importantes que puede necesitar configurar:
DEBUG = True
Esta opción le permite establecer si su proyecto está en modo de depuración o no. El modo de depuración le permite obtener más información sobre el error de su proyecto. Nunca lo configure en 'Verdadero' para un proyecto en vivo. Sin embargo, esto debe establecerse en 'Verdadero' si desea que el servidor ligero de Django sirva archivos estáticos. Hazlo solo en el modo de desarrollo.
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'database.sql',
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
}
}
La base de datos se configura en el diccionario 'Base de datos'. El ejemplo anterior es para el motor SQLite. Como se indicó anteriormente, Django también admite:
- MySQL (django.db.backends.mysql)
- PostGreSQL (django.db.backends.postgresql_psycopg2)
- Oracle (django.db.backends.oracle) y NoSQL DB
- MongoDB (django_mongodb_engine)
Antes de configurar cualquier motor nuevo, asegúrese de tener instalado el controlador db correcto.
También puedes configurar otras opciones como: TIME_ZONE, LANGUAGE_CODE, TEMPLATE…
Ahora que su proyecto está creado y configurado, asegúrese de que esté funcionando.
$ python manage.py runserver
Obtendrá algo como lo siguiente al ejecutar el código anterior:
Validating models...
0 errors found
September 03, 2015 - 11:41:50
Django version 1.6.11, using settings 'myproject.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.