我做這個教程tangowithdjango 5 Models and databasesDjango的 - 創建分類視圖不會創建列
在它要求營造的意見和喜歡與類別默認= 0柱練習。然後使用填充腳本用值更新它們。從現場
更新類型模型 直接報價中包括附加的屬性,觀點 ,喜歡這裏默認值是零。
所以我已經和models.py創建的類別
from django.db import models
from django.template.defaultfilters import default
# Create your models here.
class Category(models.Model):
name = models.CharField(max_length=128, unique=True)
views = models.IntegerField(default=0)
likes = models.IntegerField(default=0)
class Meta:
verbose_name_plural = "Categories"
def __unicode__(self):
return self.name
class Page(models.Model):
category = models.ForeignKey(Category)
title = models.CharField(max_length=128)
url = models.URLField()
views = models.IntegerField(default=0)
然後我sync.db 但是這些列未創建從我的觀點得到這個錯誤。
Exception Type: DatabaseError at /admin/rango/category/
Exception Value: no such column: rango_category.views
我是如何創建它們的?我是否必須刪除所有數據庫表並重新創建它們?
編輯:Incorrect Duplicate的解決方案不能解決問題,以及我認爲的答案。刪除數據庫並重新同步不能解決創建羣體腳本的問題。
sql似乎沒問題我不確定什麼是錯的。
BEGIN;
CREATE TABLE "rango_category" (
"id" integer NOT NULL PRIMARY KEY,
"name" varchar(128) NOT NULL UNIQUE,
"views" integer NOT NULL,
"likes" integer NOT NULL
)
;
CREATE TABLE "rango_page" (
"id" integer NOT NULL PRIMARY KEY,
"category_id" integer NOT NULL REFERENCES "rango_category" ("id"),
"title" varchar(128) NOT NULL,
"url" varchar(200) NOT NULL,
"views" integer NOT NULL
)
;
COMMIT;
Finished "/home/sayth/workspace/tango_project/manage.py sql rango" execution.
即使重新刪除數據庫和重新設計和重新創建模型也沒有解決。
BEGIN;
CREATE TABLE "rango_category" (
"id" integer NOT NULL PRIMARY KEY,
"name" varchar(128) NOT NULL UNIQUE
)
;
CREATE TABLE "rango_page" (
"id" integer NOT NULL PRIMARY KEY,
"category_id" integer NOT NULL REFERENCES "rango_category" ("id"),
"title" varchar(128) NOT NULL,
"url" varchar(200) NOT NULL,
"views" integer NOT NULL,
"likes" integer NOT NULL
)
;
COMMIT;
Finished "/home/sayth/workspace/tango_project/manage.py sql rango" execution.
可能重複http://stackoverflow.com/questions/7323659/databaseerror-no-such-column-error – laike9m
@ laike9m我希望你發佈的可能答案可以解決它,就像我發佈的答案,但可惜它沒有。 – sayth
你嘗試過'南'嗎? – laike9m