Curso Django: Instalación y primera aplicación
Requisitos para su instalación Django es un framework hecho en Python, por lo tanto se necesita que hayas previamente instalado Python (2.6 o 2.7) y tengas a la mano tu editor de texto favorito. Si no sabes que editores de texto usar, o como instalar Python lee la primera parte de la Guia Python, con esto es suficiente para empezar a trabajar.
Requisitos para su instalación
[tipexperto titulo = “Nota: Django y Python 3.0”] Django no funciona con Python 3.0 actualmente, debido a incompatibilidades con el intérprete de Python.[/tipexperto]
Al estar hecho en Python, sería bueno tener en cuenta la sintaxis y fundamentos de este lenguaje, así que si aún no lo sabes y quieres reforzar tus conocimientos, revisa la guía de Python primero antes de continuar con esta, o da un vistazo a este video de mejorando.la
[youtube http://www.youtube.com/watch?v=wp4DgNbGAUI]
Obtener Django
Para obtener Django se puede:
- Descargar la versión estable oficial más reciente, desde el sitio oficial de Django y descomprimir el archivo, debe aparecer una carpeta con el nombre de Django seguido del número de la versión bajada. (Para esta guía usaremos la versión 1.4)
- Obtener la versión de desarrollo desde el repositorio de Django, para ello se debe usar Subversión, de esta manera:
svn co http://code.djangoproject.com/svn/django/trunk/
Una vez que se ha obtenido Django, es momento de instalarlo.
Python y las variables de entorno en Windows
Los usuarios de Windows deben asegurarse de tener Python dentro de las variables de entorno, esto servirá para poder instalar Django y usarlo fácilmente. Si no sabes como hacerlo, mira el siguiente vídeo:
[youtube http://www.youtube.com/watch?v=ciYoJPw9ORg&version=3&hl=es_MX]
Instalar Django
Una vez que se descomprime el archivo descargado, debemos acceder a la carpeta desde una terminal o ventana de comandos (en caso de los usuarios de Windows). Suponiendo que la versión que elegimos es la 1.4, se tendría que digitar:
cd Django-1.4
Ya en la carpeta de instalación de Django, se debe digitar la siguiente instrucción: (Debes de tener permisos de administrador)
python setup.py install
Si usas Ubuntu GNU/Linux, sería algo así:
sudo python setup.py install
Listo eso es todo, ya tienes Django instalado. Si se desea mayor información de como instalarlo o quizás algunas otras opciones, siempre está la documentación del mismo proyecto para guiarnos. Aquí pueden encontrar la Guía completa de instalación de Django.
Si usas OS X Lion, quizás lo más recomendado sería instalar Django usando pip:
Primero, debemos tener Setup Tools para instalarlo, lo descargamos, lo descomprimimos y dentro del directorio (via el terminal)
sudo python setup.py install
Una vez con Setup Tools instalado usamos pip:
sudo pip install Django
Primer proyecto
Antes de empezar es bueno aclarar que la versión que vamos a utilizar en esta guía es la más reciente (1.4), y varias cosas han cambiado, la información que podrían encontrar en Internet probablemente se encuentre desactualizada.
Para crear nuestro primer proyecto, abrimos una terminal (o ventana de comandos si asi lo conoces en windows), nos ubicamos en la carpeta en donde queremos crear nuestro proyecto y digitamos:
django-admin.py startproject recetario
Esta instrucción creará dos directorios con el nombre del proyecto (en este caso: recetario) y 5 archivos distribuidos de la siguiente manera:
- manage.py
- recetario
- __init__.py
- settings.py
- urls.py
- wsgi.py
Para ver que el proyecto está funcionando en la terminal debemos escribir:
python manage.py runserver
Al ejecutar esa instrucción debemos visualizar un resultado como el siguiente:
Abrimos el navegador web la dirección http://127.0.0.1:8000/ y debemos ver lo siguiente:
Ya tenemos nuestro proyecto creado.
En el caso de que nos salga un error porque el puerto asignado esta en uso como la siguiente imagen:
sólo debemos indicar que puerto usaremos para lanzar el servicio, por ejemplo si se desea usar el puerto 8888 entonces se tendría que digitar:
python manage.py runserver 8888
Usaríamos la dirección http://127.0.0.1:8888/ y tendríamos como resultado lo siguiente:
Cada proyecto necesita de aplicaciones donde se puedan gestionar los modelos y las vistas. Un proyecto puede tener muchas aplicaciones:
Primera aplicación
Para crear nuestra primer aplicación, desde la terminal y en la carpeta del proyecto, debemos digitar:
python manage.py startapp principal
Esto creará un directorio y cuatro archivos más, lo que nos dejaría con una estructura de archivos como esta:
- manage.py
- recetario
- __init__.py
- settings.py
- urls.py
- wsgi.py
- principal
- __init__.py
- models.py
- test.py
- views.py
El poderoso settings.py
Una parte muy importante del proyecto es el archivo settings.py, este archivo permite configurar la conexión a la base de datos, la zona horaria, el idioma, los directorios principales del proyecto, las aplicaciones del proyecto, entre otras cosas.
Aprender a configurar este archivo permite optimizar el funcionamiento del proyecto, veremos las instrucciones principales a configurar:
Codificación de caracteres
Nuestro idioma esta lleno de caracteres especiales como las tildes y las eñes que son las más comunes, la primera sugerencia para manejar esto eficientemente en django debemos agregar la siguiente línea al archivo settings.py
#encoding:utf-8
Ruta del proyecto
Una configuración importante es configurar la ruta del proyecto, esto permitirá lanzar la aplicación desde cualquier directorio y mover el proyecto a cualquier computador con Django instalado. Para ello debemos escribir las siguientes líneas en el archivo settings.py:
# Identificando la ruta del proyecto import os RUTA_PROYECTO = os.path.dirname(os.path.realpath(__file__))
Ruta del proyecto
Administradores
Cuando Django tiene la opción de DEBUG=False, las notificaciones de error de código deben ser enviadas vía correo electrónico a los administradores, junto con
los detalles completos del error. Para poner los datos de los administradores debemos buscar la siguiente porción:
ADMINS = ( # ('Your Name', '[email protected]'), )
Y modificarla para que quede con los nombres de los administradores en forma de tupla, en mi caso lo dejaré así:
ADMINS = ( ('Sergio Infante Montero', '[email protected]'), )
Configuración de la base de datos
También podemos configurar la conexión a la base de datos según nuestras necesidades, Django soporta de manera predeterminada la conexión con postgresql, mysql, sqlite3 y oracle. En nuestro proyecto usaremos sqlite3.
Debemos buscar la siguiente sección del archivo:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. 'NAME': '', # Or path to database file if using sqlite3. 'USER': '', # Not used with sqlite3. 'PASSWORD': '', # Not used with sqlite3. 'HOST': '', # Set to empty string for localhost. Not used with sqlite3. 'PORT': '', # Set to empty string for default. Not used with sqlite3. } }
Y dejarla de la siguiente manera:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. 'NAME': 'recetario.db', # Or path to database file if using sqlite3. 'USER': '', # Not used with sqlite3. 'PASSWORD': '', # Not used with sqlite3. 'HOST': '', # Set to empty string for localhost. Not used with sqlite3. 'PORT': '', # Set to empty string for default. Not used with sqlite3. } }
Zona Horaria
Django permite configurar la zona horaria del proyecto, la lista de zonas horarias disponibles se pueden encontrar en la wikipedia. Para configurar debemos buscar lo siguiente:
TIME_ZONE = 'America/Chicago'
Yo lo configurare en la zona horaria de Lima/Perú, así que lo modificare de esta forma:
TIME_ZONE = 'America/Lima'
Configuración del idioma
Django también permite configurar el idioma que usará de manera predeterminada para su funcionamiento, para configurar esto debemos buscar lo siguiente:
LANGUAGE_CODE = 'en-us'
Se puede consultar la lista de idiomas disponibles para adecuarlo a nuestras necesidades, yo lo configurare como español de Perú:
LANGUAGE_CODE = 'es-PE'
Aplicaciones instaladas
Un proyecto en Django necesita de aplicaciones, algunas ya vienen configuradas de manera predeterminada. En nuestro proyecto usaremos la aplicación de administración y su documentación, estas ya vienen construidas, y también nuestra primera aplicación creada líneas arriba, llamada principal. Para habilitar estas aplicaciones debemos buscar la siguiente sección que se encuentra casi al final del archivo settings.py
INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', # Uncomment the next line to enable the admin: # 'django.contrib.admin', # Uncomment the next line to enable admin documentation: # 'django.contrib.admindocs', )
Y modificarlas de la siguiente manera:
INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.admin', 'django.contrib.admindocs', 'principal', )
Otras opciones de settings.py
Existen otras configuraciones que iremos modificando durante el desarrollo del curso, como el directorio de plantillas, el contenido estático, los archivos cargados por los usuarios, entre otras. Por ahora con estas instrucciones tenemos lo básico para continuar con nuestro proyecto.
Creación de la base de datos
Hasta el momento no se ha creado la base de datos o las tablas predeterminadas del proyecto, solo se ha configurado los parametros de conexión. Para crear la base de datos, debemos digitar desde la terminal o ventana de comandos, la siguiente instrucción (recordar que debemos estar en la carpeta de proyecto para que todo se realice correctamente):
python manage.py syncdb
Esta instrucción deberá mostrar el siguiente resultado:
Hay una pregunta que debemos responder, se refiere a la creación de un superusuario (un administrador del proyecto), para lo cual respondemos: yes (en caso de responder negativamente, no podremos usar inmediatamente el administrador predeterminado de Django). Luego de ello completamos la información que nos solicita.
Al finalizar ya estará creada la base de datos, como en este proyecto se usara sqlite3, debera aparecer un archivo nuevo llamado recetario.db, este contiene las tablas y los datos iniciales del proyecto.
Las direcciones URL del proyecto
Para poder visualizar los cambios que hicimos y la interfaz administrativa de Django, aún falta modificar un archivo mas, este es: urls.py (recordar que este archivo se encuentra dentro del directorio recetario). Este archivo contiene lo siguiente:
from django.conf.urls import patterns, include, url # Uncomment the next two lines to enable the admin: # from django.contrib import admin # admin.autodiscover() urlpatterns = patterns('', # Examples: # url(r'^$', 'recetario.views.home', name='home'), # url(r'^recetario/', include('recetario.foo.urls')), # Uncomment the admin/doc line below to enable admin documentation: # url(r'^admin/doc/', include('django.contrib.admindocs.urls')), # Uncomment the next line to enable the admin: # url(r'^admin/', include(admin.site.urls)), )
Debemos dejarlo de esta manera:
from django.conf.urls import patterns, include, url from django.contrib import admin admin.autodiscover() urlpatterns = patterns('', url(r'^admin/doc/', include('django.contrib.admindocs.urls')), url(r'^admin/', include(admin.site.urls)), )
Ejecución del proyecto
Una vez que tenemos todo listo y configurado, debemos nuevamente iniciar el servidor de desarrollo que tiene el proyecto. Ya hicimos esto al principio, solo debemos digitar desde la terminal nuevamente (dentro del directorio del proyecto):
python manage.py runserver
Lucirá de esta manera:
Nos muestra un error 404, luego veremos el por qué. Para ingresar a la interfaz administrativa que ya viene construida con Django, ingresaremos a la dirección: http://127.0.0.1:8000/admin, en donde debemos poner el nombre del superusuario y su respectiva contraseña, creados anteriormente (líneas arriba) con la opción syncdb.
Si todo fue correcto debemos visualizar la interfaz administrativa:
Nuestro primer proyecto ya se encuentra configurado para continuar con la construcción de los modelos. Sin embargo antes de ello debemos entender como funciona Django, ese será nuestro próximo capítulo: Entendiendo como trabaja Django.
Repositorio del proyecto
Hasta la próxima semana
Muy explicado….andaba esperando este magnifico curso…….seguiré al pie de la letra para entender perfectamente…….gracias—
gracias por empezar este curso … lo estaba esperando …
para los que usan ArchLinux se instala fácilmente con “sudo pacman -S django” …
Muy cool , lo seguiré al detalle!!!
Muy interesante y útil sobre todo porque ayuda no solo a personas del medio si no a los que somos de otras áreas que nos gusta la programación como en mi caso
Muchas gracias por compartir conocimiento, justo lo que un novato busca mucha claridad y simpleza en esta guía y voy a seguirla.
Saludos.
mmm muy bien, pero no deja de ser complejo elaborar soluciones de este modo, me gusta mucho más web2py ! Saludos
Muy bueno y detallado ta chebre el curso estare esperandola proxima clase
Hola que tal, tengo este error a la hora de configurar la base de datos:
~/trunk/recetario $ python manage.py syncdb
Traceback (most recent call last):
File “manage.py”, line 10, in
execute_from_command_line(sys.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 442, in execute_from_command_line
utility.execute()
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 381, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”, line 195, in run_from_argv
self.execute(*args, **options.__dict__)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”, line 231, in execute
output = self.handle(*args, **options)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”, line 371, in handle
return self.handle_noargs(**options)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/commands/syncdb.py”, line 57, in handle_noargs
cursor = connection.cursor()
File “/usr/local/lib/python2.7/dist-packages/django/db/backends/dummy/base.py”, line 15, in complain
raise ImproperlyConfigured(“settings.DATABASES is improperly configured. ”
django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.
la configuracion de la base de datos esta de la siguiente forma:
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’,
‘NAME’: ‘recetario.db’,
‘USER’: ‘root’,
‘PASSWORD’: ”,
‘HOST’: ”,
‘PORT’: ”,
}
}
De antemano, gracias por la ayuda.
Tenia ganas de ver Django así que me pareció una buena oportunidad para no tener que andar dando vueltas por distinos.
En media hora hice los pasos sin problemas
Gracias y hasta la semana q viene !
Primero que todo, Gracias por compartir su conocimiento, contribuyes con el mejoramiento de internet, lei partes del capitulo, lo leeré en la noche con mas detenimiento, tengo una pregunta, yo trabajo con wamp, utilizando php y mysql, la instalación me podría generar algún conflicto?
Gracias por su colaboración
El error que tienes es en el nombre de la base de datos, sino me equivoco creaste una llamada “recetario” y no “recetario.db”, la extension “.db” solo debes añadirla si estas usando sqlite3 quitale el .db al nombre y todo debería funcionar bien
Esta madre es orgasmico…. solo hacer esto y el administrador, el panel de usuarios, grupos y sitios. Ver que ya esta hecho y cambiar la contraseña, y que funciones…. Esto realmente es excelente….. ya estoy ansioso por ver el próximo capitulo y todos los que siguen.
Saludos
Muy buen capitulo, tengo poco tiempo utilizando django y algo que he encontrado tremendamente util es crear entornos de trabajo con virtualenv y en ellos instalar django y aplicaciones de terceros lo que permite un mejor control sobre el projecto, una de estas aplicaciones que recomiento es south que permite crear migraciones como en rails ojala en los siguiente capitulos puedas explicar algo de esta aplicacion que definitivamente te facilita el trabajar con la base de datos
Pues tu configuración esta mal en estas dos lineas
‘ENGINE’: ‘django.db.backends.mysql’,
‘NAME’: ‘recetario.db’,
debes cambiarlas por estas….
‘ENGINE’: ‘django.db.backends.sqlite3’, # Add ‘postgresql_psycopg2’, ‘mysql’, ‘sqlite3’ or ‘oracle’.
‘NAME’: ‘recetario.db’, # Or path to database file if us
En ningun lugar del capitulo dice que utilizaremos mysql. Claramente nos comenta @neosergio que estaremos trabajando con sqlite3 en esta guía.
Esto pasa por no leer bien.
No deberia causare ningun problema, ya que al correr python manage.py runserver estas corriendo un mini servidor de pruebas (ajeno al apache que tienes en tu wamp).
En el peor de los casos si tu apache usa el puerto 8000 como django….solo cambia el puerto de django por eje python manage.py runserver 7000 (o el nro que se ocurra) y ya…
Yo pienso seguir la guia con mysql, ya que los cambios en el settings son minimos, y el tipo de DB no va a impactar en como se armen los Modelos mas adelante…es lo bonito de django “le es indiferente la base de datos” . Sqlite3 esta bueno pero me resulta lento
Una duda porque tengo los archivos urls.py, settings.py y __init__.py en el directorio recetario (donde estan los archivos recetario.db y manage.py)
Excelente todo esta funcionando ok esperando con ansias proximo capitulo
Muy cool, voy a estar al pendiente del curso…
Genial!!!!!
Están en la carpeta superior, fijate como debería quedar: https://github.com/neosergio/recetario_mdw/tree/master/recetario
Estimado Josias, verifica bien que hayas guardo el archivo, porqué ese error sale por sintaxis mal escrita, si fuera base de datos, te daría otro tipo de error (sin permisos o que no existe la base de datos), si sigues teniendo problemas, podemos usar teamviewer para solucionarlo, mandame un DM por Twitter.
excelente tutorial ya lo realice pero intente correr los archivos del repositorio http://neosergio.github.com/recetario_mdw/ y me sale error cuando ejecuto en el manager.py
C:\recetario>python manage.py runserver
Traceback (most recent call last):
File “manage.py”, line 10, in
execute_from_command_line(sys.argv)
File “C:\Python27\lib\site-packages\django\core\management\__init__.py”, line
429, in execute_from_command_line
utility.execute()
File “C:\Python27\lib\site-packages\django\core\management\__init__.py”, line
379, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File “C:\Python27\lib\site-packages\django\core\management\__init__.py”, line
252, in fetch_command
app_name = get_commands()[subcommand]
File “C:\Python27\lib\site-packages\django\core\management\__init__.py”, line
101, in get_commands
apps = settings.INSTALLED_APPS
File “C:\Python27\lib\site-packages\django\utils\functional.py”, line 276, in
__getattr__
self._setup()
File “C:\Python27\lib\site-packages\django\conf\__init__.py”, line 42, in _set
up
self._wrapped = Settings(settings_module)
File “C:\Python27\lib\site-packages\django\conf\__init__.py”, line 139, in __i
nit__
logging_config_func(self.LOGGING)
File “C:\Python27\lib\logging\config.py”, line 777, in dictConfig
dictConfigClass(config).configure()
File “C:\Python27\lib\logging\config.py”, line 562, in configure
‘filter %r: %s’ % (name, e))
ValueError: Unable to configure filter ‘require_debug_false’: Cannot resolve ‘dj
ango.utils.log.RequireDebugFalse’: No module named RequireDebugFalse
C:\recetario>
Gracias!, muy bueno.
excelente todo muy claro y detallado, tengo una duda es pero me colaboren es que yo tengo instalado en ubuntu la versión 1.3.1 de Django, y deseo tener la versión mas actual en la cual estará basa este curso, por lo que pregunto si no habrá algún conflicto si instalo la version 1.4 de django como lo explican en este capitulo, soy novato en ubuntu aclaro..
Asegurate de tener instaladas las variables de entorno para Windows, o de tener la versión 1.4 de Django. Ese error es por la falta de un modulo, o porqué no encuentra el enlace correcto.
Debes de desinstalar primero la versión anterior para no causar conflictos con las bibliotecas
Hola Sergio,
Instalé y probé correctamente Python pero tengo un problema con Django (al parecer tampoco tuve problemas con la instalacion de este Framework). Lo que ocurre es cuando quiero crear el proyecto me aparece el siguiente error y quisiera saber como solventarlo:
” “django-admin.py” no se reconoce como un programa o archivo por lotes ejecutable.”
Qué estóy haciendo mal?
Pd. Las variables de entorno las configuré bien.
me sale un error en al momento de correr la base de datos que estará mal?
pollito@ServicioAlCliente:~/django_d/recetario$ python manage.py syncdb
Traceback (most recent call last):
File “manage.py”, line 10, in
execute_from_command_line(sys.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 443, in execute_from_command_line
utility.execute()
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 382, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”, line 196, in run_from_argv
self.execute(*args, **options.__dict__)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”, line 232, in execute
output = self.handle(*args, **options)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”, line 371, in handle
return self.handle_noargs(**options)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/commands/syncdb.py”, line 57, in handle_noargs
cursor = connection.cursor()
File “/usr/local/lib/python2.7/dist-packages/django/db/backends/dummy/base.py”, line 15, in complain
raise ImproperlyConfigured(“settings.DATABASES is improperly configured. ”
django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.
my settings lo tengo así
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.sqlite3’, # Add ‘postgresql_psycopg2’, ‘mysql’, ‘sqlite3’ or ‘oracle’.
‘NAME’: ‘recetario.db’, # Or path to database file if using sqlite3.
‘USER’: ”, # Not used with sqlite3.
‘PASSWORD’: ”, # Not used with sqlite3.
‘HOST’: ”, # Set to empty string for localhost. Not used with sqlite3.
‘PORT’: ”, # Set to empty string for default. Not used with sqlite3.
}
}
Me respondo yo mismo, busqué como loco en la documentación de Django y encontré que tambien era necesario definir como variable de entorno la ruta al archivo django-admin.py que en mi caso estaba en C:\Python27\Scripts. Creé entonces la variable de entorno y funcionó!!! 😀
Seguimos (brb)
excelente curso!! justo para personas como yo que recién se inician en django!! esperando con ansias el próximo capítulo
Les recomiendo leer djangobook aunque no esta actualizado a mi me ha ayudado mucho xD http://www.djangobook.com/en/2.0/
Gracias por el curso, muy sencillo y práctico. Está muy bien que lo hayáis basado en la nueva versión de Django, de este modo los que ya hemos tocado un poquito Django podemos ver las diferencias con la 1.3.
Como sugerencia, una de las partes que pueden resultar más interesantes para el uso a nivel profesional de Django es lo referente a la depuración. ¿Vais a incluir contenido al respecto en el curso?.
Por favor Felipe, ¿podrías poner un ejemplo de utilización de Virtualenv para crear un entorno de trabajo o poner algún vínculo con información básica de inicio de esta herramienta?.
Totalmente de acuerdo respecto al uso de South, es indispensable utilizarlo en los proyectos de Django. El comando python manage.py syncdb sólo crea las tablas, cuando modificas los modelos no actualiza la BD. South aunque en determinados escenarios tiene sus detalles es muy útil para realizar modificaciones posteriores a la creación inicial de los modelos.
Gracias y un saludo.
Tengo el mismo problema que Alejandro (31) pero yo en mi caso tengo el archivo “settings.py” de esta forma:
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.’, # Add ‘postgresql_psycopg2’, ‘mysql’, ‘sqlite3’ or ‘oracle’.
‘NAME’: ‘recetario.db’, # Or path to database file if using sqlite3.
‘USER’: ”, # Not used with sqlite3.
‘PASSWORD’: ”, # Not used with sqlite3.
‘HOST’: ”, # Set to empty string for localhost. Not used with sqlite3.
‘PORT’: ”, # Set to empty string for default. Not used with sqlite3.
}
}
Muy buen curso, se lo agradezco bastante.
La verdad muy bueno. Es impresionante lo que se puede hacer con Django.
checa tu databases es diferente al mio
Te falta indicarle a Django que gestor de BD vas a usar, para el curso sqlite3
Solucionado gracias a Teamviewer, un problema de duplicación de archivos. Si alguién tiene problemas y no pueden continuar siganme (twitter.com/neosergio) para coordinar una sesión con teamviewer y ver el problema específico
Si virtualenv y algunos complementos ayudan muchisimo al trabajo con Django, el problema es que no los he considerado en los capítulos iniciales ya que hay muchos de los que leen este material, que son novatos y hablarles de esos conceptos probablemente haga que sientan que es complejo. Sin embargo mi intención es seguir escribiendo sobre Django en Maestros, así que esos temas si están contemplados para un futuro.
Excelente. Hace un mes que empecé a estudiar este framework por mi cuenta y tiene muchísimo potencial, de hecho ya me he embarcado en un proyecto de e-commerce. Os seguiré leyendo a ver que puedo aprender y mejorar. Gracias por compartir, así da gusto aprender. 😉
Veo que ahora en Django 1.4 los apps pueden ir al lado de la carpeta del proyecto, esto me hace sentir que la carpeta del proyecto se separa y solo debe contener la “configuración” sin apps dentro de ella
¿Esa es la forma correcta de hacerlo?
Muy Bueno funcionando de maravilla.
El aviso de “contenido publicado originalmente….” no me deja ver bien las entradas de codigo :/
Muy buen curso, excelentemente explicado a detalle se agradece este tipo de aporte y estoy en espera del siguiente capitulo.
Saludos
¿A que te refieres? Las entradas de código todas son en texto plano. Si puedes ser más específico podría ayudarte a resolver la molestia que tienes
Son perspectivas distintas web2py nació en el ambito académico, Django nació en el ambito de desarrollo real. Cuestiones de gusto también al final de todo es Python
Son perspectivas distintas web2py nació en el ambito académico, Django nació en el ámbito de desarrollo real. Cuestiones de gusto también al final de todo es Python
Hay que tener cuidado con el djangobook ya que muchisimas cosas han cambiado y si se sigue al pie de la letra lo único que causara es confusión. Afortunadamente se esta preparando un libro para http://pragprog.com con lo más actualizado y similar al djangobook
Esta muy bueno el curso, muy bien explicado en espera del siguiente capitulo. Saludos!!!
Ya ví el error, como bien dices Sergio me faltaba la declaración de la base de datos, cuando la introduci, sin ningún tipo de problemas, gracias, a la espera del siguiente artículo pena que sea una vez a la semana…
tengo una duda
tengo instalado la versión 1.3.1 de Django, y deseo tener la versión mas actual en la cual estará basa este curso, pero no se como desinstalarlo para poder intalar la version 1.4. ojala me puedan ayudar..
Hmmm yo recomendaria que lo hicieran todo en entorno linux, correrlo en windows aveces trae muchos problemas
Como puedo ver la primer publicación?
En primer lugar me gustaría felicitarte por este capitulo, me a parecido realmente interesante y bien explicado.
Tengo una duda sobre el curso, ¿Enseñaras como llevar un proyecto Django a un entorno de producción?.
Saludos.
Creo que este curso de las pautas de como puede crear y manejar un projecto en django. Osea crear el projecto y asi mismo crear y modificar las aplicaciones dentro de este. El entorno en que trabajamos es el mismo framework !!
Dependiendo la distribución que tengas, la ubicación de los archivos es distinta. Te puedo ayudar a través de teamviewer, mandame un DM por Twitter para poder ayudarte.
El curso está orientado para los tres sistemas operativos más usados: GNU/Linux, OS X y Windows. No hay problema por seguir el curso en cualquiera de estos sistemas. Django se ejecuta bien en todos ellos, el asunto es saber como desplegarlo, el uso de los sistemas operativos es cuestión de gusto o costumbre. En producción definitivamente se recomienda un sistema operativo Tipo Unix.
Estas comentando la primera publicación, por si te refieres a la publicación de presentación de la guía el enlace es el siguiente: http://www.maestrosdelweb.com/editorial/curso-django-introduccion/
Muchas gracias por las felicitaciones, ahora con respecto al entorno de producción y tal y como está planteado en la presentación de la guía (http://www.maestrosdelweb.com/editorial/curso-django-introduccion/), el despliegue en producción lo veremos en el capítulo 10.
En la versión 1.4 cambia el orden de las carpetas, y lo hace con el objetivo de hacer que los proyectos crezcan facilmente. Este cambio hizo que esta guía fuera reescrita completamente, e incluso retrase nuestras publicaciones, que ya las teniamos en planificación desde marzo.
bueno yo definitivamente uso django en linux, en windows me trae demasiados problemas !! sin contar que windows ya es un problema !! Yo tengo instalado los dos :3 pero definitivamente prefiero linux
He llevado ya leyendo 5 tutoriasl y documentacion y nunca era tan explicado como aca, te paseste Sergio I. M te salio genial voy a estar siguiendote, quizas tenga algunas preguntas en las que puedas ayudar para mi aplicacion y que soluciones me podrias dar para eso. por mientras seguire ansioso al siguiente tema :3
Mis felicitaciones Sergio. Nunca había usado Django, soy completamente nuevo en esto, y fui capaz de llegar hasta el final en no mucho tiempo. Me surgió un pequeño problema, pero que conseguí solucionar casi al instante.
Esperando el siguiente capítulo. ¡Saludos!
Hola, estoy intando conectar la aplicación con una base mysql, pero obtengo un error al hacer el “syncdb”.
Mi configuración en el settings.py es:
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’, # Add ‘postgresql_psycopg2’, ‘mysql’, ‘sqlite3’ or ‘oracle’.
‘NAME’: ‘test’, # Or path to database file if using sqlite3.
‘USER’: ‘root’, # Not used with sqlite3.
‘PASSWORD’: ”, # Not used with sqlite3.
‘HOST’: ”, # Set to empty string for localhost. Not used with sqlite3.
‘PORT’: ”, # Set to empty string for default. Not used with sqlite3.
}
No tengo ninguna contraseña setteada para acceder a mysql, así que ese no es el problema.
El error que me sale es el siguiente (coloco solo la parte que a mi parecer es importante, si eso no ayuda, colocaré todo el error, pero prefiero evitar llenar todo con la página con el error 😛 ) :
raise ImproperlyConfigured(“Error loading MySQLdb module: %s” % e)
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb
Pareciera como que tengo que agregar el módulo MySQLdb, es cierto? Me puedes dar una mano?
Gracias
Muchas gracias . Puedes seguirme por Twitter para preguntas más específicas.
Para usar Mysql con Python necesitas tener instalado MySQLdb
Estupendo, cualquier duda me mandas un DM por Twitter
No logro instalar correctamente MySQLdb, alguien que me pueda dar una mano? MP por favor.
Aclaro, uso Ubuntu 12.04
Me olvidé de aclarar: mi problema cuando intento instalar mySQLdb es que me dice que no encuentra “mysql_config”
Lo logré! Luego de estar un buen rato buscando por internet encontré la solución, la publico aquí para que no les pase lo mismo a los demás.
Para los que quieran utilizar python con mysql en ubuntu, deberán instalar mysqldb como bien dijeron.
Los pasos que yo seguí y me funcionaron son:
1) Descargar el paquete python-mysql de: http://sourceforge.net/projects/mysql-python/
2) sudo python setup.py install (dentro del paquete descargado)
3) Si el paso anterior les tiró error diciendo que no encuentra mysql_config, deberán hacer lo siguiente:
4) Correr el siguiente comando en consola: sudo apt-get install libmysqlclient-dev python2.7-dev (cuidado con la versión de python)
5) Entrar a la carpeta descargada en el punto 1, y editar el archivo “site.cfg”, y buscar la siguiente línea:
#mysql_config = /usr/bin/mysql_config
Descomentarla (sacarle el “#”) y cambiar la dirección por donde tengan el mysql_config.
6) Listo, ahora si, vuelven a realizar el punto 2 y ya debería funcionar.
A mi eso me anduvo correctamente, espero poder haber ayudado a alguien.
Saludos.
Buena iniciativa este curso .. pero tengo el siguiente problema. Al ejecutar la linea de comando en DOS con la linea: python setup.py install — me aparece un mensaje y dice: Este archivo no tiene ningún programa asociado para realizar esta acción.Instale el programa que corresponda, o si ya lo tiene instalado,cree una asociación en el panel de control de programas predeterminados….. // cual seria el paso a seguir mucha gracias por la ayuda de antemano.. : D
Genial, me gusto mas asi, Sergio un excelente articulo, gracias por tu dedicación, espero con ansias el segundo capitulo
Saludos desde Colombia
Gracias de nuevo, tener un soporte tan directo me vendrá genial en caso de quedarme atascado.
Hola tengo Windows 7 y cuando doy la orden
django-admin.py startproject recetario me da error “django-admin.py” no se reconoce como un comando interno o externo, comando o archivo por lotes ejecutable
eso es un error por el tema de los paths? yo tengo a Python en el Path y funciona bien
otra duda, puedo seguir este tutorial pero ejecutando el proyecto en Eclipse con Django ya instalado?
Gracias!
No viste el video de las variables de entorno con Windows, dale un tiempo, encontraras la respuesta a tu problema
No solo necesitas que Python se encuentre dentro de los path, también es necesario incluir la carpeta de scripts por lo general debe estar en un directorio C:\Python27\Scripts. Con respecto a usar Eclipse adelante, los archivos en Python pueden ser editados con tu herramienta favorita.
Otra manera quizas mucho mas simple es hacer un: sudo apt-get install python-mysqldb
Hola, recién estuve probando rehacer todo pero con SQLlite3, y sobre el final, cuando corro el servidor, entro a miurl/admin/, me logueo, y me sale un cartel, que dice:
Administración de DJango
Administración de Sitio
No tiene permiso para editar nada.
Osea, ya con la interfaz del admin de django.
Por qué será? alguna idea?
Ah, me había olvidado de “descomentar” la linea de admin.autodiscover()
Ahora anda correctamente.
ya solucionaste el problema??, porque a mi me sucede lo mismo ¿que hago?
porque cuando escribo python manage.py syncdb la consola me lanza errores ayuda, creo que he hecho bien los pasos ¿que pudo salir mal? porfa respondan me aquí o envíeme un mensaje a [email protected] quiero continuar con el curso
Gracias por el consejo, mientras tanto leeré la documentación de django hasta que se publique el libro —————-
Hola, Que ventajas tiene instalar el framework en Phyton
Bueno la ventaja es una esquema de trabajo ya predefinido, dentro de cual puedes crear aplicaciones ya con un estructura que facilita la modificacion de estas, ademas que trabaja bajo un lenguaje de alto nivel cuya caracteristica es de ser un lenguaje interpretado cuya funcion es asimilar la sintexis de codigo mas natural al hombres y de manera eficiente. Aparte de trabajar con el concepto DRY , Don’t Repeat Yourself !! que facilita un codigo legible, limpio facil de entender y otras cosas mas !.
Yo Adoro pyhon y ruby. son mis lenguajes favoritos
La ventaja mas notoria es la rapidez con la cual se construyen aplicaciones y lo ordenado que puede ser.
Hay alguan forma o tutorial o guia de referencia para la instalacion de django + python + mysql (o similar) + nginx en un servidor de recursos minimos(256 mb ram)
gracias por el tutorial 😀
Joseph
Muy cierto, vi un poco de web2py pero sinceramente tiene limitaciones, por lo que leí y por comentarios que escuché de fuentes confiables pues Django es mucho más configurable que web2py además con Django se saca mejores resultados en proyectos grandes; una excelente guía, la seguiré al pie de la letra :).
Excelente el curso, muy bien explicado y facil de entender, se agradece el conocimiento compartido!
saludos
muy bueno el curso. gracias por compartirlo..
tengo una duda en cuanto al configurar el settings.py . respecto a la ruta del proyecto
donde coloco esta variable RUTA_PROYECTO = os.path.dirname(os.path.realpath(__file__))
gracias esta genial……..
Tan específico como eso, quizas si buscas en stackoverflow puedes encontrar, o si te suscribes a las listas de correo de Django
En las primeras líneas, no te olvides de importar el os
esto esta genial gracias sergio por hacer este curso. estare esperando los proximos capitulos.
gracias
olas a todos… recien estoy iniciando en Django, lo instale y trate de configurarlo, pero cuando escribo la linea de comando:
python manage.py syncdb me sale el siguiente error:
Traceback (most recent call last):
File “manage.py”, line 10, in
execute_from_command_line(sys.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 442, in execute_from_command_line
utility.execute()
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 381, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 252, in fetch_command
app_name = get_commands()[subcommand]
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 101, in get_commands
apps = settings.INSTALLED_APPS
File “/usr/local/lib/python2.7/dist-packages/django/utils/functional.py”, line 184, in inner
self._setup()
File “/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py”, line 43, in _setup
self._wrapped = Settings(settings_module)
File “/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py”, line 93, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File “/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py”, line 35, in import_module
__import__(name)
File “/home/francisco/ProyDjango/recetario/recetario/settings.py”, line 3
/home/francisco/ProyDjango/Recetario = os.path.dirname(os.path.realpath(__file__))
^
SyntaxError: invalid syntax
francisco@hpFrancisco:~/ProyDjango/recetario$ python manage.py syncdb
Traceback (most recent call last):
File “manage.py”, line 10, in
execute_from_command_line(sys.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 442, in execute_from_command_line
utility.execute()
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 381, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 252, in fetch_command
app_name = get_commands()[subcommand]
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 101, in get_commands
apps = settings.INSTALLED_APPS
File “/usr/local/lib/python2.7/dist-packages/django/utils/functional.py”, line 184, in inner
self._setup()
File “/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py”, line 43, in _setup
self._wrapped = Settings(settings_module)
File “/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py”, line 93, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File “/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py”, line 35, in import_module
__import__(name)
File “/home/francisco/ProyDjango/recetario/recetario/settings.py”, line 3
/home/francisco/ProyDjango/Recetario = os.path.dirname(os.path.realpath(__file__))
^
SyntaxError: invalid syntax
francisco@hpFrancisco:~/ProyDjango/recetario$ clear
francisco@hpFrancisco:~/ProyDjango/recetario$ python manage.py syncdb
Traceback (most recent call last):
File “manage.py”, line 10, in
execute_from_command_line(sys.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 442, in execute_from_command_line
utility.execute()
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 381, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 252, in fetch_command
app_name = get_commands()[subcommand]
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 101, in get_commands
apps = settings.INSTALLED_APPS
File “/usr/local/lib/python2.7/dist-packages/django/utils/functional.py”, line 184, in inner
self._setup()
File “/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py”, line 43, in _setup
self._wrapped = Settings(settings_module)
File “/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py”, line 93, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File “/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py”, line 35, in import_module
__import__(name)
File “/home/francisco/ProyDjango/recetario/recetario/settings.py”, line 3
/home/francisco/ProyDjango/Recetario = os.path.dirname(os.path.realpath(__file__))
^
SyntaxError: invalid syntax
————-
por favor espero me ayuden… gracias
Exelente, muy sencillo para arrancar, y nada aburrido 😉 Gracias
Es por error de sintaxis, date una vuelta por el repositorio del proyecto, para que compruebes de que el archivo settings.py es igual al que tienes, repositorio (http://neosergio.github.com/recetario_mdw)
estos son tutoriales!! transmisión de conocimiento 100% efectiva, aprendí, lo pude hacer!! muchas gracias.
Estupendo que te haya servido
no puedo hacer el syncdb estoy haciendo el ejercici con postgres y luego intente con mysql y creo que no me funciona porque no tengo instalados ls paquetes para pythn de postgres y mysql ya los descargue pero no se como instalarlos….. alguien me ayuda . gracias.
Hola Sergio,
Al ejecutar el servidor no me deja importar patterns nose porque me sale este error
cannot import name patterns
Request Method: GET
Request URL: http://127.0.0.1:8888/
Django Version: 1.3.1
Exception Type: ImportError
Exception Value:
cannot import name patterns
Exception Location: /home/review/bin/recetario/../recetario/urls.py in , line 1
Python Executable: /usr/bin/python
Python Version: 2.6.8
Python Path:
[‘/home/review/bin/recetario’,
‘/usr/local/lib/python2.6/site-packages/setuptools-0.6c12dev_r88846-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/python_memcached-1.48-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/ReviewBoard-1.6.9-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/recaptcha_client-1.0.6-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/pytz-2012c-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/python_dateutil-1.5-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/paramiko-1.7.7.2-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/flup-1.0.3.dev_20110405-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/Pygments-1.5-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/Djblets-0.6.19-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/django_evolution-0.6.7-py2.6.egg’,
‘/usr/local/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg’,
‘/usr/lib/python26.zip’,
‘/usr/lib/python2.6’,
‘/usr/lib/python2.6/plat-linux2’,
‘/usr/lib/python2.6/lib-tk’,
‘/usr/lib/python2.6/lib-old’,
‘/usr/lib/python2.6/lib-dynload’,
‘/usr/lib/python2.6/site-packages’,
‘/usr/lib/python2.6/site-packages/Numeric’,
‘/usr/lib/python2.6/site-packages/PIL’,
‘/usr/local/lib/python2.6/site-packages’,
‘/usr/lib/python2.6/site-packages/gtk-2.0’]
Server time:
Hola Sergio encontre una forma de que me funcione pero aun no entiendo como importando
todos los paquetes funciona y haciendolo individual no me deja importar patterns
Asi me funciona.
from django.conf.urls.defaults import *
from django.contrib import admin
Muchas gracias por su tiempo y disculpe las molestias
Hola, me parece muy interesante el tema, estoy iniciando en django y estoy siguiendo el vídeo tutorial pero me quedo en la parte de instalar twython en mi distro (Ubuntu precise) cuando intento compilar el paquete me sale un error de una librería y no me deja instalar, que puedo hacer en este caso?
Gracias
Excelente curso hasta el momento muy bueno, gracias muy buena calidad ! Saludos desde Mexico!
Muy buen comienzo!. Aguardamos con mucha expectativa los siguientes pasos, por ahora dando los primeros pasos con django.exitos!! y gracias!
Buenas tardes tengo el siguiente problema cuando ejecuto el comando : python manage.py syncdb
C:\recetario2>python manage.py syncdb
Traceback (most recent call last):
File “manage.py”, line 10, in
execute_from_command_line(sys.argv)
File “C:\Python27\lib\site-packages\django\core\management\__init__.py”, line
443, in execute_from_command_line
utility.execute()
File “C:\Python27\lib\site-packages\django\core\management\__init__.py”, line
382, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File “C:\Python27\lib\site-packages\django\core\management\__init__.py”, line
252, in fetch_command
app_name = get_commands()[subcommand]
File “C:\Python27\lib\site-packages\django\core\management\__init__.py”, line
101, in get_commands
apps = settings.INSTALLED_APPS
File “C:\Python27\lib\site-packages\django\utils\functional.py”, line 184, in
inner
self._setup()
File “C:\Python27\lib\site-packages\django\conf\__init__.py”, line 42, in _set
up
self._wrapped = Settings(settings_module)
File “C:\Python27\lib\site-packages\django\conf\__init__.py”, line 93, in __in
it__
mod = importlib.import_module(self.SETTINGS_MODULE)
File “C:\Python27\lib\site-packages\django\utils\importlib.py”, line 35, in im
port_module
__import__(name)
File “C:\recetario2\recetario2\settings.py”, line 109, in
os.path.join(“C:\recetario2\recetario2\plantillas”,’plantillas’),
Al final me da el siguiente error
NameError: name ‘os’ is not defined
Por su apoyo gracias.
Hola cuando ingreso a mi ip/admin me sale el siguiente error.
DoesNotExist at /admin/
Site matching query does not exist.
Request Method: GET
Request URL: http://212.1.209.204:8000/admin/
Django Version: 1.4
Exception Type: DoesNotExist
Exception Value:
Site matching query does not exist.
Exception Location: /usr/local/lib/python2.7/dist-packages/django/db/models/query.py in get, line 366
Python Executable: /usr/bin/python
Python Version: 2.7.3
Python Path:
[‘/root/recetario’,
‘/usr/lib/python2.7’,
‘/usr/lib/python2.7/plat-linux2’,
‘/usr/lib/python2.7/lib-tk’,
‘/usr/lib/python2.7/lib-old’,
‘/usr/lib/python2.7/lib-dynload’,
‘/usr/local/lib/python2.7/dist-packages’,
‘/usr/lib/python2.7/dist-packages’,
‘/usr/lib/python2.7/dist-packages/PIL’,
‘/usr/lib/python2.7/dist-packages/gst-0.10’,
‘/usr/lib/python2.7/dist-packages/gtk-2.0’,
‘/usr/lib/pymodules/python2.7’,
‘/usr/lib/python2.7/dist-packages/ubuntu-sso-client’,
‘/usr/lib/python2.7/dist-packages/ubuntuone-client’,
‘/usr/lib/python2.7/dist-packages/ubuntuone-control-panel’,
‘/usr/lib/python2.7/dist-packages/ubuntuone-couch’,
‘/usr/lib/python2.7/dist-packages/ubuntuone-installer’,
‘/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol’]
alguna idea????? Gracias.
DatabaseError at /admin/
no such table: django_session
Request Method: GET
Request URL: http://127.0.0.1:8000/admin/
Django Version: 1.3.1
Exception Type: DatabaseError
Exception Value:
no such table: django_session
Exception Location: C:\Python27\lib\site-packages\django\db\backends\sqlite3\base.py in execute, line 234
Python Executable: C:\Python27\python.exe
Python Version: 2.7.3
Python Path:
[‘C:\\Users\\david\\workspace\\recetario\\recetario’,
‘C:\\Users\\david\\workspace\\recetario’,
‘C:\\Python27\\DLLs’,
‘C:\\Python27\\lib’,
‘C:\\Python27\\lib\\plat-win’,
‘C:\\Python27\\lib\\lib-tk’,
‘C:\\Python27’,
‘C:\\Python27\\lib\\site-packages’,
‘C:\\Windows\\system32\\python27.zip’]
Server time: sáb, 28 Jul 2012 01:35:59 -0500
me sale este error y no entiendo que pasa, gracias por la ayuda muy buen tutorial
Hola que tal chicos!
Necesito saber si existe un comando que hace todo lo contrario de : python manage.py runserver , lo que yo quiero hacer es parar el server, probablemente ustedes me diras solo presiona ctrl + c , pero mi pregunta es si existe un comando.
Gracias.
cuando pongo python manage.py syncdb me da este problema, ayuda porfavor…
razalas89@razalas89:~/Documents/Django-1.4.1/lol$ python manage.py syncdb
Traceback (most recent call last):
File “manage.py”, line 10, in
execute_from_command_line(sys.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 443, in execute_from_command_line
utility.execute()
File “/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”, line 382, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”, line 196, in run_from_argv
self.execute(*args, **options.__dict__)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”, line 232, in execute
output = self.handle(*args, **options)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”, line 371, in handle
return self.handle_noargs(**options)
File “/usr/local/lib/python2.7/dist-packages/django/core/management/commands/syncdb.py”, line 57, in handle_noargs
cursor = connection.cursor()
File “/usr/local/lib/python2.7/dist-packages/django/db/backends/dummy/base.py”, line 15, in complain
raise ImproperlyConfigured(“settings.DATABASES is improperly configured. ”
django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.
razalas89@razalas89:~/Documents/Django-1.4.1/lol$
ayuda porfavor…
gracias
estuve viendo y me parece interesante, pero me estanque en el paso de crear un proyecto mediante este comando:
django-admin.py startproject recetario
ahí me sale que no se reconoce el comando: django-admin.py
espero sus ayudas, saludos…
Hola me sale un error en el comando de python manage.py runserver, me dice que no existe el fichero manage.py, yo uso ubuntu.
Yo estoy haciendo un proyecto en django 1.3 con python 2.7 pero para mi proyecto quiero utilizar mysql no se mucho de mysql pero en la pruebas que hago siempre me aparece este error que no se puede conectar con el servidor localhost 10061 mi configuracion es la siguiente
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’,
‘NAME’: ‘pruebas’,
‘USER’: ‘root’,
‘PASSWORD’: ”,
‘HOST’: ‘localhost’,
‘PORT’: ‘3306’,
}
}
Muy buen aporte…
Esta super interesante…
las variables de entorno que tenes que agregar en WINDOWS son dos:
C:\Python27\;C:\Python27\Scripts\
asi SI funciona!!
Saludos.
Muchas gracias!!!! estuve varios días buscando un tutorial de esta nivel… se agradece muchísimo 😀
tengo el siguiente error a la hora de ajustar la url del perfil administrador de django:
ImportError at /admin
cannot import name patterns
sigo los pasos de este capitulo y toda esta ya bien, la base da datos ajustado y sincronizada pero ps este error no pueedo seguir
Miguel, ya lo hice, aun continua con el error
saludos
Tengo un problema al agregar el modulo mysql a python, aparece el siguiente error al ejecutar la instalación:
# python setup.py build
File “setup.py”, line 16
metadata[‘ext_modules’] = [Extension(sources=[‘_mysql.c’], **options)]
^
SyntaxError: invalid syntax
alguien tiene información de este error, gracias.
Saludos.
Hola, una pequeña duda… ¿Por qué cuando abro el administrador se ve como si no tomara los estilos css. Una página sin los estilos como se muestra en sus imagenes?
Gracias.