在Django无法导入表格(cannot import form in django)

2019-10-17 03:13发布

我面对恼人的问题..我试图用自定义字段扩展用户registation ...如下

从django.db进口车型进口hashlib进口日期时间进口HMAC

from django.contrib.auth.models import User
from ecpCommon.models import StateModel
from ecpCommon.enum import enumauto
from ecpPayments.models import PaymentCard
from registration.signals import user_registered
from apps.ecpUser.models import UserProfile
from apps.ecpMerchant.forms import RegistrationFormEx


   class MerchantProfile(StateModel):
      user = models.OneToOneField(UserProfile, related_name="merchant_profile")
      payment_card = models.OneToOneField(PaymentCard, related_name="merchant_profile")
      current_state = models.IntegerField('State', choices=STATE_CHOICES)
      name = models.CharField('Merchant Name', max_length=64)

      def user_created(sender, user, request, **kwargs):
            form = RegistrationFormEx(data=request.POST)
            new_user = User.objects.get(username=request.POST['username'])
            digest=hmac.new("qnscAdgRlkIhAUPY44oiexBKtQbGY0orf7OV1I50", str(request.POST['password1']),hashlib.sha1).hexdigest()
            new_profile = UserProfile(user=new_user,api_key=digest)
            new_profile.save()
            #now add other fields including password hash as well
            uid = new_profile.id

            merchant_profile = MerchantProfile(user_id=uid,
                create_time=datetime.datetime.now(),
                modified_time=datetime.datetime.now(),
                payment_card_id=uid,
                current_state=1,
                name=request.POST['name'],
                 )
            merchant_profile.save()

我的形式是如下

from django import forms
from registration.forms import RegistrationForm
from django.utils.translation import ugettext_lazy as _
from registration.models import RegistrationProfile
from apps.ecpMerchant.models import Category

class RegistrationFormEx(RegistrationForm):
    #ADD ALL CUSTOM FIELDS BELOW
    name=forms.CharField()

但它显示下面的错误日志..前面这是工作。后来的错误来..我有与其他表款修改几个...但它是如何实现这种登记

C:\Python27\Lib\site-packages\django\bin\ecp>manage.py runserver
Validating models...

Unhandled exception in thread started by <bound method Command.inner_run of <dja
ngo.contrib.staticfiles.management.commands.runserver.Command object at 0x02DC0A
B0>>
Traceback (most recent call last):
  File "C:\Python27\lib\site-packages\django\core\management\commands\runserver.
py", line 91, in inner_run
    self.validate(display_num_errors=True)
  File "C:\Python27\lib\site-packages\django\core\management\base.py", line 266,
 in validate
    num_errors = get_validation_errors(s, app)
  File "C:\Python27\lib\site-packages\django\core\management\validation.py", lin
e 30, in get_validation_errors
    for (app_name, error) in get_app_errors().items():
  File "C:\Python27\lib\site-packages\django\db\models\loading.py", line 158, in
 get_app_errors
    self._populate()
  File "C:\Python27\lib\site-packages\django\db\models\loading.py", line 67, in
_populate
    self.load_app(app_name)
  File "C:\Python27\lib\site-packages\django\db\models\loading.py", line 88, in
load_app
    models = import_module('.models', app_name)
  File "C:\Python27\lib\site-packages\django\utils\importlib.py", line 35, in im
port_module
    __import__(name)
  File "C:\Python27\Lib\site-packages\django\bin\ecp\apps\ecpMerchant\models.py"
, line 10, in <module>
    from apps.ecpMerchant.forms import RegistrationFormEx
  File "C:\Python27\Lib\site-packages\django\bin\ecp\apps\ecpMerchant\forms.py",
 line 5, in <module>
    from apps.ecpMerchant.models import Category
  File "C:\Python27\Lib\site-packages\django\bin\ecp\apps\ecpMerchant\models.py"
, line 10, in <module>
    from apps.ecpMerchant.forms import RegistrationFormEx
ImportError: cannot import name RegistrationFormEx

Answer 1:

圆形进口...

你有形式导入其进口形式模型。



文章来源: cannot import form in django