Red de conocimiento informático - Material del sitio web - Cómo crear un sitio web Django

Cómo crear un sitio web Django

Crear un proyecto

Ejecute el siguiente comando para crear un proyecto Django llamado mysite:

$ django-admin . es el siguiente:

Mi sitio web

├──Management.py

└──Mi sitio web

├── __init__. Paraguay

├──Configuración.py

├──Sitio Web.py

└──Wall Street Journal

1 Tabla de Contenido, 5 Archivo

Descripción:

__init__. py: permita que Python trate este directorio como los archivos requeridos por un paquete de desarrollo (es decir, un conjunto de módulos). Este es un archivo vacío. Generalmente no se requiere ninguna modificación.

Manage.py: una herramienta de línea de comandos que te permite interactuar con este proyecto Django de varias maneras. Escriba python enable.py help y vea qué hace. No debería necesitar editar este archivo; se genera en este directorio simplemente por conveniencia.

Settings.py: Los ajustes o configuración de este proyecto Django.

URLs.py: configuración de enrutamiento de URL para proyectos de Django. Actualmente está vacío.

wsgi.py: Archivo de configuración del servidor de aplicaciones web wsgi. Consulte Cómo implementar con WSGI para obtener más detalles.

A continuación, puede modificar el archivo settings.py, como modificar LANGUAGE_CODE y configurar la zona horaria TIME_ZONE.

SITE_ID = 1

Código de idioma = 'zh_CN '

TIME_ZONE = 'Asia/Shanghai'

USE_TZ = Verdadero

La función [zonas horarias](/es/1.7/topics/I 18n/timezones/) está activada y es necesario instalar pytz:

$ sudo pip install pytz

Ejecutar el proyecto

Antes de ejecutar el proyecto, necesitamos crear una base de datos y una estructura de tablas. Aquí uso la base de datos predeterminada:

$ python Manage.py migración

¿Qué hacer:

? Aplicar todas las migraciones: Gestión, Tipos de contenido, Validación, Sesiones

Ejecutar migraciones:

? Aplicar tipos de contenido 0001 _ inicial... ¿OK

? Solicitar autorización 0001_Inicial... ¿OK

? Aplicar para administrador 0001_initial... ¿OK

? Aplicando sesión. 0001_initial... OK

Luego inicie el servicio:

$ python Manage.py Runserver

Verá el siguiente resultado:

Realizando una verificación del sistema...

La verificación del sistema no encontró problemas (0 silencio).

28 de enero de 2065 05:02:08:33

Django versión 1.7.1, usando la configuración 'mysite.settings'

En caso común, inicie el servidor de desarrollo, por lo que Django proporciona un

# acceso directo para una búsqueda precisa de la clave principal.

#Lo siguiente es lo mismo que los objetos de pregunta.

gt gt gtQuestion.Object.Get(pk=1)

ltP: ¿Qué pasa? gt

#Asegúrese de que nuestros métodos de personalización funcionen.

gt gt gtq = pregunta.objetos get(PK = 1)

#Dale varias opciones a la pregunta. La llamada de creación construye un nuevo

# objeto Choice, ejecuta la instrucción INSERT, agrega la opción a la colección

El número de opciones disponibles y devuelve el nuevo objeto de opción. Django creó

# una colección que contiene el "otro lado" de una relación de clave externa

# (como la selección de la pregunta), accesible a través de la API.

gt gt gtq = question .objects . get(PK = 1)

#Mostrar cualquier opción en el conjunto de objetos relacionados; actualmente ninguna.

gt gt gtq.choice_set.all()

[]

#Crea tres opciones.

gt gt gtq . elección _ set create(choice _ text = 'No muchos', votos=0)

ltChoice: No muchos gt

gt gt gtq . elección _ set create(choice _ text = 'El cielo ', votos=0)

ltchoice: skygt

gt gt gtc = q . (choice _ text = 'Solo un truco más', votos = 0)

# El objeto Choice tiene acceso API a sus objetos de preguntas relacionados.

gt gt gtPregunta

ltP: ¿Qué pasa? gt

# Viceversa: el objeto problemático tiene acceso al objeto de selección.

gt gt gtq.choice_set.all()

[ lt; elección: no muchos gt, lt elección: cielo gt, lt elección: invadir de nuevo gt]

gt gt gtq.choice_set.count()

La API rastrea automáticamente las relaciones según sus necesidades.

#Utilice guiones bajos dobles para separar relaciones.

#Esto funciona a cualquier profundidad que desees; sin restricciones.

#Encontrar todas las opciones para cualquier número con fecha de publicación dentro de este año

# (reutilizando la variable "current_year" que creamos arriba).

gt gt gtChoice.objects.filter(question__release_date__year=current-year)

[ lt;Elección: no muchos gt, ltChoice: sky gt, lt Elección: Invadir gt de nuevo]

#Eliminemos una de las opciones. Para hacer esto, use eliminar().

gt gt gtc = q . elección _ set filter(choice _ text __ comienza con = 'Solo un truco')

gt gt gtdelete()

gt gt gt

Las pruebas anteriores implican conocimientos sobre Django ORM. Para obtener una descripción detallada, consulte ORM en Django.

El quinto paso es la administración de la gestión

Django tiene una característica excelente: tiene una interfaz de administración en segundo plano incorporada de Django para facilitar a los administradores agregar y eliminar contenido del sitio web.

El nuevo sistema de proyectos ha configurado funciones de gestión en segundo plano para nosotros. Consulte mysite/settings.py:

INSTALLED_APPS =(

' Django.contrib.admin ', #Agregar funciones de administración en segundo plano de forma predeterminada.

' django

' django.contrib.contenttypes ',

' django.contrib.sessions ',

' django.contrib.messages '. ,

' django.contrib.staticfiles ',

"Mi sitio web",

)

Al mismo tiempo, el fondo Se agrega la URL de administración, se puede ver en mysite/urls.py:

Url (r' admin/', include (admin.site.Urls)), #Puede usar la URL configurada para ingresar el back-end del sitio web.

A continuación, necesitamos crear un usuario administrativo para iniciar sesión en la interfaz de administración en segundo plano:

$ python enable.py para crear un superusuario

Nombre de usuario (deje en blanco para usar "Junio"): admin

Dirección de correo electrónico:

Contraseña:

Contraseña (nuevamente):

Superusuario Creado con éxito.

Resumen

Finalmente, eche un vistazo a la estructura del directorio del proyecto:

Mi sitio web

├──Database.sqlite3

├──Management.py

├──Mi sitio web

│ ?├── __init__. Paraguay

│ ?├──Configuración.py

│ ?├──Sitio web.py

│ ?├──Wall Street Journal

├──Encuesta

│ ?├── __init__. Paraguay

│ ?├──Centro de Gestión

│ ?├──Inmigración

│ ?│ ?├── 0001_initial.py

│ ?│ ?├── __init__. Paraguay

│ ?├──Model.py

│ ?├──Plantilla

│ ?│ ?└──Encuesta

│ ?│ ?detail.html├──

│ ?│ ?index.html├──

│ ?│ ?resultados.html└──

│ ?├──Test.py

│ ?├──Sitio web.py

│ ?├──py

└─ ─ Plantilla

└──Gestión

└──Base_website.htm?

A través de la introducción anterior, tenemos una comprensión clara de la instalación y operación de Django y cómo crear vistas y modelos, y luego podemos aprender las pruebas automatizadas, la persistencia, el middleware, la internacionalización y otros conocimientos de Django.

Si tu problema se soluciona, ¡acéptalo!

Si no se resuelve, por favor continúa preguntando.