为了账号安全,请及时绑定邮箱和手机立即绑定

如何从终端窗口动态更改/插入 djnago 有限状态机

如何从终端窗口动态更改/插入 djnago 有限状态机

鸿蒙传说 2023-07-11 16:17:55
我有下面的 a.py djnago 有限状态机程序:from django.db import modelsfrom django_fsm import transition,                 FSMIntegerFieldfrom django_fsm import FSMField, transitionimport osos.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")import djangodjango.setup()from django.core.management import call_commandclass 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")我将运行上面的程序:按 F5。  >>> State= order()  >>> State.walk # input   >>> Target moved # output我想了解一下,除了已经可用的之外,djnago /python 是否还提供从终端窗口插入诸如( STATUS_HOLD、STATUS_JUMP)之类的状态的机会。以便这些新状态在计划中得到定位。任何可能性。谢谢。
查看完整描述

1 回答

?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

前:


  @transition(field=status, source=[STATUS_GO],  target=STATUS_COME)

现在:


 in=input("source")

 out =input("Target)

 @transition(field=status, source=in,  target=out)

与 Status_choice 类似,获取用户的输入。


这帮助我即时输入


查看完整回答
反对 回复 2023-07-11
  • 1 回答
  • 0 关注
  • 132 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信