-1

このエラーがあります

Name 'Order' is not defined

次の節で:

            try:
                order = Order.objects.from_request(request)
                cart = OrderCart(order)
            except Order.DoesNotExist:
                pass

Order同じファイルで正確に定義され、のサブクラスですmodel.Model

より具体的に言うと、私が使用しているファイルは次のとおり です

なぜこれができるのですか?

アップデート:

トレースバックは次のとおりです。

Traceback:
File "/home/evgeniuz/.virtualenvs/port/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  100.                     response = callback(request, *callback_args, **callback_kwargs)
File "/home/evgeniuz/src/chillifish-pg/lib/payment/views/balance.py" in balance_remaining_order
  30.         template='shop/checkout/balance_remaining.html')
File "/home/evgeniuz/src/chillifish-pg/pg/pgstore/utils.py" in _view
  38.             return view_func(request, *args, **kwargs)
File "/home/evgeniuz/src/chillifish-pg/lib/payment/views/balance.py" in balance_remaining
  66.         'paymentmethod_ct': len(config_value('PAYMENT', 'MODULES'))
File "/home/evgeniuz/.virtualenvs/port/lib/python2.7/site-packages/django/template/context.py" in __init__
  149.             self.update(processor(request))
File "/home/evgeniuz/src/chillifish-pg/lib/satchmo_store/shop/context_processors.py" in settings
  21.     cart = Cart.objects.from_request(request)
File "/home/evgeniuz/src/chillifish-pg/lib/satchmo_store/shop/models.py" in from_request
  237.                 except Order.DoesNotExist:

Exception Type: NameError at /shop/checkout/balance/1/
Exception Value: global name 'Order' is not defined
4

2 に答える 2

1

何かが足りないだけかもしれませんが、定義される前に CartManager の Order クラスを参照しています。Order は 642 行目まで定義されていません。Django の内部動作についてはよくわかりませんが、Order クラスを CartManager の上に移動して、このエラーを回避できるかどうかを確認します。

于 2012-05-14T15:22:29.373 に答える