如何运行 Django FSM 第一个项目
How to run Django FSM first project
我有下面的 django-program--- walk.py
from django.db import models
from django_fsm import transition, FSMIntegerField
from django_fsm import FSMField, transition
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
import django
django.setup()
from django.core.management import call_command
class Order(models.Model):
STATUS_GO = 0
STATUS_COME =1
STATUS_CHOICES = (
(STATUS_GO, 'GO'),
(STATUS_COME,'come')
)
product = models.CharField(max_length=200)
status = FSMIntegerField(choices=STATUS_CHOICES, default=STATUS_GO, protected=True)
@transition(field=status, source=[STATUS_GO], target=STATUS_COME)
def walk(self):
print("Target moved")
以上代码位于 c:\Hello 文件夹中。
我参考了一些博客和 link 创建新的 django 项目。
so in cmd window,通过"cd c:\Hello"拖到上面的文件夹并执行:
django-admin startproject mysite
并移动 walk.py 到我的网站文件夹
目录为:
Hello/
mysite/
manage.py
walk.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py
随后执行:
python manage.py migrate
python manage.py runserver
Post 我现在一直被卡住并且混淆了我的项目需要以上两个步骤。
做
python manage.py startapp polls
现在是 运行 的任务吗?如果是这样,在 polls/models.py 文件中编辑什么??
稍后我需要在INSTALLED_APPS = []中提及什么???
继续前进,我应该把我的项目 walk.py 放在上面目录的什么地方?
现在当我 运行 walk.py 时,我现在可以看到以下问题:
RuntimeError: Model class main.Order 没有显式声明 app_label 并且不在 INSTALLED_APPS 中的应用程序中.
请帮忙
在 INSTALLED_APPS
中,您必须像这样添加新应用:
INSTALLED_APPS = [
// ...
'django.contrib.staticfiles',
'django.contrib.sites',
'polls'
]
现在 Django 将知道您的应用程序。
实际错误:
RuntimeError: 模型 class main.Tag 未声明显式 app_label 并且不在 INSTALLED_APPS.[=12= 中的应用程序中]
我的解决方案:
运行
django-admin startproject mysite
在项目文件夹中
Hello/
mysite/
manage.py
walk.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py
后来在 INSTALLED_APPS 中添加了“main”并且现在工作正常
我有下面的 django-program--- walk.py
from django.db import models
from django_fsm import transition, FSMIntegerField
from django_fsm import FSMField, transition
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
import django
django.setup()
from django.core.management import call_command
class Order(models.Model):
STATUS_GO = 0
STATUS_COME =1
STATUS_CHOICES = (
(STATUS_GO, 'GO'),
(STATUS_COME,'come')
)
product = models.CharField(max_length=200)
status = FSMIntegerField(choices=STATUS_CHOICES, default=STATUS_GO, protected=True)
@transition(field=status, source=[STATUS_GO], target=STATUS_COME)
def walk(self):
print("Target moved")
以上代码位于 c:\Hello 文件夹中。
我参考了一些博客和 link 创建新的 django 项目。
so in cmd window,通过"cd c:\Hello"拖到上面的文件夹并执行:
django-admin startproject mysite
并移动 walk.py 到我的网站文件夹
目录为:
Hello/
mysite/
manage.py
walk.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py
随后执行:
python manage.py migrate
python manage.py runserver
Post 我现在一直被卡住并且混淆了我的项目需要以上两个步骤。
做
python manage.py startapp polls
现在是 运行 的任务吗?如果是这样,在 polls/models.py 文件中编辑什么??
稍后我需要在INSTALLED_APPS = []中提及什么???
继续前进,我应该把我的项目 walk.py 放在上面目录的什么地方?
现在当我 运行 walk.py 时,我现在可以看到以下问题:
RuntimeError: Model class main.Order 没有显式声明 app_label 并且不在 INSTALLED_APPS 中的应用程序中.
请帮忙
在 INSTALLED_APPS
中,您必须像这样添加新应用:
INSTALLED_APPS = [
// ...
'django.contrib.staticfiles',
'django.contrib.sites',
'polls'
]
现在 Django 将知道您的应用程序。
实际错误: RuntimeError: 模型 class main.Tag 未声明显式 app_label 并且不在 INSTALLED_APPS.[=12= 中的应用程序中]
我的解决方案:
运行
django-admin startproject mysite
在项目文件夹中
Hello/
mysite/
manage.py
walk.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py
后来在 INSTALLED_APPS 中添加了“main”并且现在工作正常