Hi,

If you have deleted your old db and creating a fresh database, then delete
all files generated previously using migration command and do migration

(have a backup before deleting files) ;)

On Tue, 26 Nov 2019 at 23:57, Ahmad Saki <[email protected]> wrote:

> Hi friend,
>
> When I want to create my custom authentication model User. I have got
> error such as 'FieldDoesNotExist 'userid''.
> So, I have deleted all of these previous migration_files, re-create
> database and makemigrations. But cannot able to migrate again.
>
>
> On Wednesday, November 27, 2019 at 12:05:24 AM UTC+6, Integr@te System
> wrote:
>>
>> Hi friend,
>>
>> plz check these files: '  # Generated by Django 2.2.3 on 2019-11-26 15:36 '
>> and another (if u have), to see separating.
>>
>> On Tue, Nov 26, 2019, 23:44 Ahmad Saki <[email protected]> wrote:
>>
>>> Hello Dear,
>>> Please explain with more words. How do I solve this problem? What can I
>>> do?
>>>
>>> On Tuesday, November 26, 2019 at 9:54:26 PM UTC+6, Integr@te System
>>> wrote:
>>>>
>>>> Hi man,
>>>>
>>>> And u see error occur again, isn't it?
>>>> Do you differ two file that app output when you migrated?
>>>>
>>>> On Tue, Nov 26, 2019, 22:40 Ahmad Saki <[email protected]> wrote:
>>>>
>>>>> organization.Organization model:
>>>>>
>>>>> from django.db import models
>>>>>
>>>>> class Organization(models.Model):
>>>>>    orgid = models.IntegerField(max_length=6, primary_key=True)
>>>>>    name = models.CharField(max_length=50)
>>>>>    phone = models.CharField(max_length=20,null=True,blank=True,default
>>>>> =None)
>>>>>    email = models.CharField(max_length=50,null=True,blank=True,default
>>>>> =None)
>>>>>    mobile = models.CharField(max_length=20,null=True,blank=True,
>>>>> default=None)
>>>>>    permanent_address = models.CharField(max_length=200,null=True,blank
>>>>> =True,default=None)
>>>>>    present_address = models.CharField(max_length=200,null=True,blank=
>>>>> True,default=None)
>>>>>    remark = models.CharField(max_length=500,null=True,blank=True,
>>>>> default=None)
>>>>>
>>>>> And migration:
>>>>>
>>>>> # Generated by Django 2.2.3 on 2019-11-26 15:36
>>>>>
>>>>> from django.db import migrations, models
>>>>>
>>>>>
>>>>> class Migration(migrations.Migration):
>>>>>
>>>>>     initial = True
>>>>>
>>>>>     dependencies = [
>>>>>    ]
>>>>>
>>>>>     operations = [
>>>>>        migrations.CreateModel(
>>>>>            name='Organization',
>>>>>            fields=[
>>>>>                ('orgid', models.IntegerField(max_length=6, primary_key
>>>>> =True, serialize=False)),
>>>>>                ('name', models.CharField(max_length=50)),
>>>>>                ('phone', models.CharField(blank=True, default=None,
>>>>> max_length=20, null=True)),
>>>>>                ('email', models.CharField(blank=True, default=None,
>>>>> max_length=50, null=True)),
>>>>>                ('mobile', models.CharField(blank=True, default=None,
>>>>> max_length=20, null=True)),
>>>>>                ('permanent_address', models.CharField(blank=True,
>>>>> default=None, max_length=200, null=True)),
>>>>>                ('present_address', models.CharField(blank=True,
>>>>> default=None, max_length=200, null=True)),
>>>>>                ('remark', models.CharField(blank=True, default=None,
>>>>> max_length=500, null=True)),
>>>>>            ],
>>>>>        ),
>>>>>    ]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Tuesday, November 26, 2019 at 8:26:13 PM UTC+6, Integr@te System
>>>>> wrote:
>>>>>>
>>>>>> hi, inspect your typo and Organization model.
>>>>>>
>>>>>> On Tue, Nov 26, 2019, 16:31 Ahmad Saki <[email protected]> wrote:
>>>>>>
>>>>>>> Dear,
>>>>>>> Thanks for your response.
>>>>>>> I use the foreign key field 'orgid' or not but got the same error.
>>>>>>> If I want to use this then where is my fault for this error!
>>>>>>>
>>>>>>>
>>>>>>> On Tuesday, November 26, 2019 at 12:11:58 PM UTC+6, Integr@te
>>>>>>> System wrote:
>>>>>>>>
>>>>>>>> Hi man,
>>>>>>>>
>>>>>>>> Check 'class UserManager(): ......orgid = org_obj '
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Nov 26, 2019, 01:40 Ahmad Saki <[email protected]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> My custom authentication model in django:
>>>>>>>>>
>>>>>>>>> from django.db import models
>>>>>>>>> from django.contrib.auth.models import (
>>>>>>>>> AbstractBaseUser, BaseUserManager
>>>>>>>>> )
>>>>>>>>> from organization.models import Organization
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> class UserManager(BaseUserManager):
>>>>>>>>> # use_in_migrations = True
>>>>>>>>>
>>>>>>>>> # python manage.py createsuperuser
>>>>>>>>> def create_user(self, orgid, username, email,  password=None, 
>>>>>>>>> is_admin=False, is_staff=False, is_active=True):
>>>>>>>>>     if not orgid:
>>>>>>>>>         raise ValueError("Organization of user must not empty")
>>>>>>>>>     elif not username:
>>>>>>>>>         raise ValueError("User must have an username")
>>>>>>>>>     elif not email:
>>>>>>>>>         raise ValueError("User must have an email address")
>>>>>>>>>
>>>>>>>>>     org_obj = Organization.objects.all(orgid=orgid)
>>>>>>>>>     user_obj = self.model(
>>>>>>>>>         orgid=org_obj,
>>>>>>>>>         username=username,
>>>>>>>>>         email = self.normalize_email(email),
>>>>>>>>>         password=password
>>>>>>>>>         )
>>>>>>>>>     user_obj.set_password(password)
>>>>>>>>>     user_obj.admin=is_admin
>>>>>>>>>     user_obj.staff=is_staff
>>>>>>>>>     user_obj.active=is_active
>>>>>>>>>     user_obj.save(using=self._db)
>>>>>>>>>     return user_obj
>>>>>>>>>
>>>>>>>>> # python manage.py createsuperuser
>>>>>>>>> def create_superuser(self, orgid, username, email, password=None):
>>>>>>>>>     user = 
>>>>>>>>> self.create_user(orgid,username,email,password=password,is_admin=True,is_staff=True,is_active=True)
>>>>>>>>>     return user
>>>>>>>>>
>>>>>>>>> def create_staffuser(self, orgid, username, email, password=None):
>>>>>>>>>     user = 
>>>>>>>>> self.create_user(orgid,username,email,password=password,is_admin=False,is_staff=True,is_active=True)
>>>>>>>>>     return user
>>>>>>>>>
>>>>>>>>> class User(AbstractBaseUser):
>>>>>>>>> orgid       = models.ForeignKey(Organization, max_length=6, 
>>>>>>>>> on_delete=models.CASCADE)
>>>>>>>>> username    = models.CharField(primary_key=True, max_length=50)
>>>>>>>>> email       = models.EmailField(max_length=255, unique=True, 
>>>>>>>>> null=False, blank=False)
>>>>>>>>> admin       = models.BooleanField(default=False)
>>>>>>>>> staff       = models.BooleanField(default=False)
>>>>>>>>> active      = models.BooleanField(default=True)
>>>>>>>>> date_joined = models.DateTimeField(auto_now_add=True)
>>>>>>>>>
>>>>>>>>> objects = UserManager()
>>>>>>>>>
>>>>>>>>> USERNAME_FIELD = "username"
>>>>>>>>> # REQUIRED_FIELDS must contain all required fields on your User model,
>>>>>>>>> # but should not contain the USERNAME_FIELD or password as these 
>>>>>>>>> fields will always be prompted for.
>>>>>>>>> REQUIRED_FIELDS = ['orgid','email']
>>>>>>>>>
>>>>>>>>> class Meta:
>>>>>>>>>     app_label = "user"
>>>>>>>>>     db_table = "user"
>>>>>>>>>
>>>>>>>>> def __str__(self):
>>>>>>>>>     return self.username
>>>>>>>>>
>>>>>>>>> def get_full_name(self):
>>>>>>>>>     return self.username
>>>>>>>>>
>>>>>>>>> def get_short_name(self):
>>>>>>>>>     return self.username
>>>>>>>>>
>>>>>>>>> # this methods are require to login super user from admin panel
>>>>>>>>> def has_perm(self, perm, obj=None):
>>>>>>>>>     return self.is_staff
>>>>>>>>>
>>>>>>>>> # this methods are require to login super user from admin panel
>>>>>>>>> def has_module_perms(self, app_label):
>>>>>>>>>     return self.is_staff
>>>>>>>>>
>>>>>>>>> @property
>>>>>>>>> def is_admin(self):
>>>>>>>>>     return self.admin
>>>>>>>>>
>>>>>>>>> @property
>>>>>>>>> def is_staff(self):
>>>>>>>>>     return self.staff
>>>>>>>>>
>>>>>>>>> @property
>>>>>>>>> def is_active(self):
>>>>>>>>>     return self.active
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> When I create migrations it creates:
>>>>>>>>>
>>>>>>>>> from django.db import migrations, models
>>>>>>>>> import django.db.models.deletion
>>>>>>>>> import user.models
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> class Migration(migrations.Migration):
>>>>>>>>>
>>>>>>>>> initial = True
>>>>>>>>>
>>>>>>>>> dependencies = [
>>>>>>>>>     ('organization', '0001_initial'),
>>>>>>>>> ]
>>>>>>>>>
>>>>>>>>> operations = [
>>>>>>>>>     migrations.CreateModel(
>>>>>>>>>         name='User',
>>>>>>>>>         fields=[
>>>>>>>>>             ('password', models.CharField(max_length=128, 
>>>>>>>>> verbose_name='password')),
>>>>>>>>>             ('last_login', models.DateTimeField(blank=True, 
>>>>>>>>> null=True, verbose_name='last login')),
>>>>>>>>>             ('username', models.CharField(max_length=50, 
>>>>>>>>> primary_key=True, serialize=False)),
>>>>>>>>>             ('email', models.EmailField(max_length=255, unique=True)),
>>>>>>>>>             ('admin', models.BooleanField(default=False)),
>>>>>>>>>             ('staff', models.BooleanField(default=False)),
>>>>>>>>>             ('active', models.BooleanField(default=True)),
>>>>>>>>>             ('date_joined', models.DateTimeField(auto_now_add=True)),
>>>>>>>>>             ('orgid', models.ForeignKey(max_length=6, 
>>>>>>>>> on_delete=django.db.models.deletion.CASCADE, 
>>>>>>>>> to='organization.Organization')),
>>>>>>>>>         ],
>>>>>>>>>         options={
>>>>>>>>>             'db_table': 'user',
>>>>>>>>>         },
>>>>>>>>>         managers=[
>>>>>>>>>             ('objects', user.models.UserManager()),
>>>>>>>>>         ],
>>>>>>>>>     ),
>>>>>>>>> ]
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> But when I want to migrate it gives me an error below. Please help
>>>>>>>>> me anyone..
>>>>>>>>>
>>>>>>>>> Operations to perform:
>>>>>>>>>   Apply all migrations: admin, auth, contenttypes, organization, 
>>>>>>>>> sessions, user
>>>>>>>>> Running migrations:
>>>>>>>>>   Applying admin.0004_auto_20191118_2315...Traceback (most recent 
>>>>>>>>> call last):
>>>>>>>>>   File "manage.py", line 21, in <module>
>>>>>>>>>     main()
>>>>>>>>>   File "manage.py", line 17, in main
>>>>>>>>>     execute_from_command_line(sys.argv)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\core\management\__init__.py",
>>>>>>>>>  line 381, in execute_from_command_line
>>>>>>>>>     utility.execute()
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\core\management\__init__.py",
>>>>>>>>>  line 375, in execute
>>>>>>>>>     self.fetch_command(subcommand).run_from_argv(self.argv)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\core\management\base.py",
>>>>>>>>>  line 323, in run_from_argv
>>>>>>>>>     self.execute(*args, **cmd_options)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\core\management\base.py",
>>>>>>>>>  line 364, in execute
>>>>>>>>>     output = self.handle(*args, **options)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\core\management\base.py",
>>>>>>>>>  line 83, in wrapped
>>>>>>>>>     res = handle_func(*args, **kwargs)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\core\management\commands\migrate.py",
>>>>>>>>>  line 234, in handle
>>>>>>>>>     fake_initial=fake_initial,
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\db\migrations\executor.py",
>>>>>>>>>  line 117, in migrate
>>>>>>>>>     state = self._migrate_all_forwards(state, plan, full_plan, 
>>>>>>>>> fake=fake, fake_initial=fake_initial)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\db\migrations\executor.py",
>>>>>>>>>  line 147, in _migrate_all_forwards
>>>>>>>>>     state = self.apply_migration(state, migration, fake=fake, 
>>>>>>>>> fake_initial=fake_initial)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\db\migrations\executor.py",
>>>>>>>>>  line 245, in apply_migration
>>>>>>>>>     state = migration.apply(state, schema_editor)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\db\migrations\migration.py",
>>>>>>>>>  line 124, in apply
>>>>>>>>>     operation.database_forwards(self.app_label, schema_editor, 
>>>>>>>>> old_state, project_state)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\db\migrations\operations\fields.py",
>>>>>>>>>  line 249, in database_forwards
>>>>>>>>>     schema_editor.alter_field(from_model, from_field, to_field)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\db\backends\base\schema.py",
>>>>>>>>>  line 507, in alter_field
>>>>>>>>>     new_db_params = 
>>>>>>>>> new_field.db_parameters(connection=self.connection)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\db\models\fields\related.py",
>>>>>>>>>  line 966, in db_parameters
>>>>>>>>>     return {"type": self.db_type(connection), "check": 
>>>>>>>>> self.db_check(connection)}
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\db\models\fields\related.py",
>>>>>>>>>  line 963, in db_type
>>>>>>>>>     return self.target_field.rel_db_type(connection=connection)
>>>>>>>>>   File 
>>>>>>>>> "C:\Users\ZAB-SAKI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\django\db\models\fields\related.py",
>>>>>>>>>  line 878, in target_field
>>>>>>>>>     return self.foreign_related_fields[0]
>>>>>>>>> IndexError: tuple index out of range
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>>> Groups "Django users" group.
>>>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>>>> send an email to [email protected].
>>>>>>>>> To view this discussion on the web visit
>>>>>>>>> https://groups.google.com/d/msgid/django-users/7f038f19-7430-4d4b-8dc3-efad352d7bc8%40googlegroups.com
>>>>>>>>> <https://groups.google.com/d/msgid/django-users/7f038f19-7430-4d4b-8dc3-efad352d7bc8%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>>> .
>>>>>>>>>
>>>>>>>> --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "Django users" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>> send an email to [email protected].
>>>>>>> To view this discussion on the web visit
>>>>>>> https://groups.google.com/d/msgid/django-users/2c8f88c6-5021-4113-84ee-ac0d53001e1a%40googlegroups.com
>>>>>>> <https://groups.google.com/d/msgid/django-users/2c8f88c6-5021-4113-84ee-ac0d53001e1a%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>>
>>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Django users" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> To view this discussion on the web visit
>>>>> https://groups.google.com/d/msgid/django-users/84f02bae-7119-4066-a3d3-3dfc8b8c5973%40googlegroups.com
>>>>> <https://groups.google.com/d/msgid/django-users/84f02bae-7119-4066-a3d3-3dfc8b8c5973%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Django users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/django-users/1c7a93a2-7eb8-4b9d-9928-aa14f86065a8%40googlegroups.com
>>> <https://groups.google.com/d/msgid/django-users/1c7a93a2-7eb8-4b9d-9928-aa14f86065a8%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/django-users/d0684d23-aa0a-4c98-b1cc-e0150ed22651%40googlegroups.com
> <https://groups.google.com/d/msgid/django-users/d0684d23-aa0a-4c98-b1cc-e0150ed22651%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>


-- 
Thanks & Regards,

Raja Sekar Sampath
+91 9087434567.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/CAAS5AE6S%3D%2BxpExoR9GP%3D5frKKQ73LKBCUHVvdqTuiDSiTWzvtQ%40mail.gmail.com.

Reply via email to