2010-07-16 28 views
0

我得到以下错误:Django的说:表X有没有名为Y.我不同意列

sqlite3.OperationalError: table gallery_image has no column named filename 

这里是我的模型:

from django.db import models 

class Image(models.Model): 
    filename= models.Field(max_length=40); 
    gallery = models.ForeignKey('Gallery') 
    def __unicode__(self): 
     return u'%s(%s)' % (self.filename,self.gallery) 

class Gallery(models.Model): 
    title = models.CharField(max_length=100) 
    url  = models.CharField(max_length=50, unique=True) 
    def __unicode__(self): 
     return u'title: %s, url: %s' % (self.title, self.url) 

和这个脚本显然有在一个错误最后一行

from django.core.management.base import BaseCommand 
from dev.gallery.models import Gallery, Image 
import os 

class Command(BaseCommand): 
    def handle(self, *args, **options): 
     importfrom='/srv/django/dev/gallery/import' 
     exportto='/var/www/dev-media/' 

     title=args[0] 
     url=args[1] 

     print(os.listdir(importfrom)) 

     if not len(args)==2: 
      print 'wrong number of arguments' 
      return ; 

     #Create the gallery in the database 
     g=Gallery(title=title,url=title) 
     g.save(); 

     files=os.listdir('/srv/django/dev/gallery/import'); 

     for f in files: 
      Image(filename=f,gallery=g).save(); 

,如果这对你有意义的,请向我解释为什么:)

回答

1

应该filenameFileField而不是仅仅是Field的实例吗?

+0

谢谢...应该是CharField,因为我想存储的所有文件的实际名称不是位置:) – niklasfi 2010-07-16 22:23:04

+0

很高兴我可以帮助:-) – Lexo 2010-07-16 23:03:04

相关问题