#三步來實現模型的變動:html
#安裝及啓動apppython
pip install django
django-admin startproject myblog
python manage.py startapp app
class Article(models.Model): class Meta: verbose_name = '微讀書' #提供了一個更容易讓人閱讀的名稱 verbose_name_plural = '微讀書' #複數形式 title = models.CharField(max_length=30) content = models.TextField() pub_date = models.DateTimeField()
INSTALLED_APPS = ( ... 'app', )
admin.site.register(Article)
python manage.py createsuperuser python manage.py syncdb #應用到數據庫
python manage.py makemigrations python manage.py migrate
python manage.py runserver
#引入bootstrap數據庫
pip install django-admin-bootstrapped
INSTALLED_APPS = ( 'django_admin_bootstrapped', #必須在django.contrib.admin以前 'django.contrib.admin', ... )
#引入markdowndjango
pip install markdown
from markdown import markdown def detail(request, id): article = models.Article.objects.get(id__exact=id) article.content = markdown(article.content) return render(request, 'template/detail.html', {'article': article})
{{ article.content|safe }}
#model導出爲jsonjson
def toJSON(self): fields = [] for field in self._meta.fields: fields.append(field.name) d = {} for attr in fields: if isinstance(getattr(self, attr),datetime.datetime): d[attr] = getattr(self, attr).strftime('%Y-%m-%d %H:%M:%S') elif isinstance(getattr(self, attr),datetime.date): d[attr] = getattr(self, attr).strftime('%Y-%m-%d') else: d[attr] = getattr(self, attr) import json return json.dumps(d)