PeeWee ForeignKeyField error. IntegrityError: (1215, 'Cannot add foreign key constraint')
It is probably not recommended to put the UNIQUE in the field definitions since these are already primary keys:

```python
class UnsignedBigAutoField(pw.BigAutoField):
    field_type = 'BIGINT UNSIGNED AUTO_INCREMENT'

class UnsignedAutoField(pw.AutoField):
    field_type = 'INT UNSIGNED AUTO_INCREMENT'
```

The issue is that Peewee sees your subclass of `BigAutoField` and infers that it should use BIGINT instead of BIGINT UNSIGNED. The fix is to override the `field_type` on the foreign-key, e.g.:

```python

class UnsignedForeignKey(pw.ForeignKeyField):
    field_type = 'BIGINT UNSIGNED'

class Ticket(MySQLModel):
    id = UnsignedBigAutoField(primary_key=True)
    user = UnsignedForeignKeyField(User, backref="tickets", field="id", on_delete="RESTRICT", on_update="CASCADE")
    date_created = pw.DateTimeField(default=datetime.datetime.now)
```
I have code like below:


```
import datetime

import peewee as pw
import os

my_db = pw.MySQLDatabase(database=os.getenv("DB_NAME"), host=os.getenv("DB_HOST"), port=os.getenv("DB_PORT"),
                            user=os.getenv("DB_USER"), passwd=os.getenv("DB_PASSWORD")


class MySQLModel(pw.Model):
    """A base model class that will use MySQL"""

    class Meta:
        database = my_db


class UnsignedBigAutoField(pw.BigAutoField):
    field_type = 'BIGINT UNSIGNED UNIQUE AUTO_INCREMENT'


class UnsignedAutoField(pw.AutoField):
    field_type = 'INT UNSIGNED UNIQUE AUTO_INCREMENT'


class User(MySQLModel):
    id = UnsignedBigAutoField(primary_key=True)
    alias = pw.CharField(max_length=16, unique=True, null=False)
    date_created = pw.DateTimeField(default=datetime.datetime.now)


class Ticket(MySQLModel):
    id = UnsignedBigAutoField(primary_key=True)
    user = pw.ForeignKeyField(User, backref="tickets", field="id", on_delete="RESTRICT", on_update="CASCADE")
    date_created = pw.DateTimeField(default=datetime.datetime.now)

my_db.create_tables([User, Ticket])

```
The last line of the code when creating ForeignKey produces error:

> peewee.IntegrityError: (1215, 'Cannot add foreign key constraint')


I checked the datatype(Bitint), and unique/non-null flag are all setup correctly for User table.

Couldn't figure out what went wrong here. I created the ForeignKey in MySqlWorkBench manually in Ticket table without a problem.

Any help would be appreciated.