Herramientas de usuario

Herramientas del sitio


fw:django

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
fw:django [2014/01/14 17:36]
alfred [url() function]
fw:django [2020/05/09 09:25] (actual)
Línea 36: Línea 36:
  
 ==== Basic knowledge for creating applications ==== ==== Basic knowledge for creating applications ====
-For django an application is like a module, something that have a concrete purpose and performs actions for that. An application can be used in several projects because a project is a group of applications.+For django an application is like a module, something that has a concrete purpose and performs actions for that. An application can be used in several projects because a project is finally ​a group of applications.
 <​code>​ <​code>​
 $ python manage.py startapp polls $ python manage.py startapp polls
Línea 51: Línea 51:
 from polls.models import Poll from polls.models import Poll
 admin.site.register(Poll) admin.site.register(Poll)
 +</​code>​
 +The structure to arrange several applications inside a project is:
 +<​code>​
 +<my project>
 +-- manage.py
 +-- <project name>
 +----- urls.py
 +----- models.py
 +----- views.py
 +----- blog\ <- An app
 +-------- views.py ​
 +-------- urls.py
 +-------- models.py
 +----- tasks\ <- Another app
 +-------- views.py
 +-------- urls.py
 +-------- models.py
 </​code>​ </​code>​
 ==== Shell ==== ==== Shell ====
 Running the command ''​$ python manage.py shell''​ will open a Python shell to interact with data inside the project. Running the command ''​$ python manage.py shell''​ will open a Python shell to interact with data inside the project.
-==== Configuration ====+==== Configuration ​and settings ​==== 
 +A settings file is just a Python module with module-level variables. So it can import values from other settings file. 
 + 
 +=== Using settings in Python code === 
 +<​code>​ 
 +from django.conf import settings 
 + 
 +if settings.DEBUG:​ 
 +    # Do something 
 +</​code>​ 
 +Remember that ''​django.conf.settings''​ is not a module so ''​from django.conf.settings import DEBUG''​ will not work. 
 + 
 +=== Superuser creation === 
 +<​code>​ 
 +$ python manage.py createsuperuser --username=joe --email=joe@example.com 
 +</​code>​
 ===== Database ===== ===== Database =====
 ==== Basic ==== ==== Basic ====
Línea 119: Línea 151:
 ) )
 </​code>​ </​code>​
-Calling ''/​polls/​34/''​ will make a call like this one: ''​detail(request=<​HttpRequest object>, poll_id='​34'​)''​. The poll_id='​34'​ part comes from ''​(?​P<​poll_id>​\d+)''​. ''?​P<​poll_id>''​ defines the name that will be used to identify the matched pattern; and \d+ is a regular expression to match a sequence of digits ​(i.e., a number).+Calling ''/​polls/​34/''​ will make a call like this one: ''​detail(request=<​HttpRequest object>, poll_id='​34'​)''​. The poll_id='​34'​ part comes from ''​(?​P<​poll_id>​\d+)''​. ''?​P<​poll_id>''​ defines the name that will be used to identify the matched pattern; and ''​\d+'' ​is a regular expression to match a sequence of digits.
 ===== Notes ===== ===== Notes =====
   * To see the sql from an application you'll need to run: ''​$ python manage.py sql appname''​   * To see the sql from an application you'll need to run: ''​$ python manage.py sql appname''​
 +
 +==== Setting another settings file ====
 +You should indicate your settings files, probably you'll need an environtment variable, to do easily you could execute manage using it:
 +<​code>​
 +$ DJANGO_SETTINGS_MODULE=settings.dev python manage.py runserver -l info
 +</​code>​
 +Or adding it before the imports:
 +<code python>
 +import os
 +os.environ.setdefault('​DJANGO_SETTINGS_MODULE',​ '​settings.dev'​)
 +
 +from common.testCase import MongoTestCase
 +import engines.css.models as model
 +...
 +</​code>​
fw/django.1389720965.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)