a little summary of Django

url routing mechanism

url name/namespace

We can name a url pattern in urls.py, and reference this name to generate a url in other places. This ensures no hard-coded url. Read the django tutorial for details. (search "Removing hardcoded URLs in templates")

ORM

concept: schema migration

Each time data model is changed, django can generate a migration to record this change and apply it to the database schema.

Suppose two developers are working on the same django project, they have theire own local databases and own test data in dbs.

1. One day, A changed a table schema, and submits his codes into git.

2. B pulls down the newest codes, generate migrations, apply migrations to his own database.

3. This way, B's test data is not affected. Without schema migrations, B has to do data migration himself:

    export test data=>drop old table=>create table using new schema=>import test data

Read the django tutorial for details. (search "Creating models")

project and app

referenced from django tutorial:

What’s the difference between a project and an app? An app is a Web application that does something – e.g., a Weblog system, a database of public records or a simple poll app. A project is a collection of configuration and apps for a particular Web site. A project can contain multiple apps. An app can be in multiple projects.

 

posted on 2014-11-21 11:27  一生只想往前飞  阅读(168)  评论(0编辑  收藏  举报

导航