簡體   English   中英

在Mac 10.8.5上運行Django服務器時出現錯誤

[英]Getting error when running the Django server on my Mac 10.8.5

我正在嘗試在Mac上設置Python / Django / Mysql,但在終端中運行此命令時卻不斷收到以下錯誤

Python manage.py runserver

我得到的錯誤是

Marks-MacBook-Air:FirstBlog mmillar$ python manage.py runserver
Validating models...

Unhandled exception in thread started by <bound method Command.inner_run of      <django.contrib.staticfiles.management.commands.runserver.Command object at 0x1017c2b10>>
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/commands/runserver.py", line 92, in inner_run
self.validate(display_num_errors=True)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/base.py", line 280, in validate
 num_errors = get_validation_errors(s, app)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/validation.py", line 35, in get_validation_errors
for (app_name, error) in get_app_errors().items():
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/loading.py", line 166, in get_app_errors
self._populate()
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/loading.py", line 72, in _populate
self.load_app(app_name, True)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/loading.py", line 96, in load_app
models = import_module('.models', app_name)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/Users/mmillar/PycharmProjects/FirstBlog/blog/models.py", line 5, in <module>
class post(models.Model):
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/base.py", line 145, in __new__
new_class.add_to_class(obj_name, obj)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/base.py", line 265, in add_to_class
value.contribute_to_class(cls, name)
TypeError: Error when calling the metaclass bases
unbound method contribute_to_class() must be called with TextField instance as first argument (got ModelBase instance instead)

models.py

from django.db import models 
# Create your models here. 

class post(models.Model): 
    author = models.CharField(max_length=30) 
    title = models.CharField(max_length=100) 
    bodytext = models.TextField 
    timestamp = models.DateTimeField 

我認為您做了類似的事情:

錯誤:

class Foo(models.Model):
    bar = models.TextField

正確:

class Foo(models.Model):
    bar = models.TextField()

因此,您嘗試使用類而不是類實例進行驗證。

您的models.py必須如下所示:

from django.db import models 
# Create your models here. 

class post(models.Model): 
    author = models.CharField(max_length=30) 
    title = models.CharField(max_length=100) 
    bodytext = models.TextField()
    timestamp = models.DateTimeField() 

原因unbound method contribute_to_class() TypeError指示

“未正確聲明模型字段,缺少字段類型名稱后的括號”

您缺少2個字段的括號:

bodytext = models.TextField 
timestamp = models.DateTimeField 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM