2013-01-07 41 views
0

一直未能找到解決方案。Django syncdb AttributeError:'list'對象沒有屬性'startswith'

models.py

class Product(models.Model): 
    prod_id = models.IntegerField(primary_key = True) 
    prod_name = models.CharField(max_length=128) 
    prod_price = models.FloatField() 
    prod_quantity = models.CharField(max_length=75) 
    prod_description = models.TextField() 
    prod_attributes = models.TextField() 
    prod_ingredients = models.TextField() 

settings.py

INSTALLED_APPS = (
'django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.sites', 
'django.contrib.messages', 
'django.contrib.staticfiles', 
'MyApp', 

這就是會拋出的錯誤:

Creating tables ... self.fetch_command(subcommand).run_from_argv(self.argv) File "C:\Python27\Lib\site-packages\django\core\management\base.py", line 196, in run_from_argv self.execute(*args, **options.dict) File "C:\Python27\Lib\site-packages\django\core\management\base.py", line 232, in execute output = self.handle(*args, **options) File "C:\Python27\Lib\site-packages\django\core\management\base.py", line 371, in handle return self.handle_noargs(**options) File "C:\Python27\Lib\site-packages\django\core\management\commands\syncdb.py", line 91, in handle_noargs sql, references = connection.creation.sql_create_model(model, self.style, seen_models) File "C:\Python27\Lib\site-packages\django\db\backends\creation.py", line 82, in sql_create_model style.SQL_TABLE(qn(opts.db_table)) + ' ('] File "C:\Python27\Lib\site-packages\django\db\backends\mysql\base.py", line 244, in quote_name if name.startswith(" ") and name.endswith(" "): AttributeError: 'list' object has no attribute 'startswith'

所以關鍵部分: AttributeError的: '名單'對象沒有屬性'startswith'

任何人有任何想法,爲什麼我得到這個錯誤?我已經嘗試了很多不同的東西,即使你成功地創建了其他表,它也不會工作,它只是不會創建我的模型類。我正在使用一個MySQL數據庫。

回答

2

回溯表明您可能錯誤地使用了db_table選項。它應該是一個字符串,而不是一個列表。請檢查您的使用情況,如果您不確定,請使用更多代碼更新您的問題。

+0

我怎麼能看不到。正如你所說我正在錯誤地使用db_table選項。我將它改爲class Meta:db_table = u'Products'Thanks Alot Man – Gin

相關問題