make user_id non nullable on contact, email_log and file

This commit is contained in:
Son NK 2020-03-20 10:13:25 +01:00 committed by Son NK
parent 5f429abb7a
commit b5c369f084
2 changed files with 38 additions and 3 deletions

View file

@ -80,7 +80,7 @@ class ModelMixin(object):
class File(db.Model, ModelMixin): class File(db.Model, ModelMixin):
path = db.Column(db.String(128), unique=True, nullable=False) path = db.Column(db.String(128), unique=True, nullable=False)
user_id = db.Column(db.ForeignKey("users.id", ondelete="cascade"), nullable=True) user_id = db.Column(db.ForeignKey("users.id", ondelete="cascade"), nullable=False)
def get_url(self, expires_in=3600): def get_url(self, expires_in=3600):
return s3.get_url(self.path, expires_in) return s3.get_url(self.path, expires_in)
@ -701,7 +701,7 @@ class Contact(db.Model, ModelMixin):
db.UniqueConstraint("alias_id", "website_email", name="uq_contact"), db.UniqueConstraint("alias_id", "website_email", name="uq_contact"),
) )
user_id = db.Column(db.ForeignKey(User.id, ondelete="cascade"), nullable=True) user_id = db.Column(db.ForeignKey(User.id, ondelete="cascade"), nullable=False)
alias_id = db.Column(db.ForeignKey(Alias.id, ondelete="cascade"), nullable=False) alias_id = db.Column(db.ForeignKey(Alias.id, ondelete="cascade"), nullable=False)
# used to be envelope header, should be mail header from instead # used to be envelope header, should be mail header from instead
@ -747,7 +747,7 @@ class Contact(db.Model, ModelMixin):
class EmailLog(db.Model, ModelMixin): class EmailLog(db.Model, ModelMixin):
user_id = db.Column(db.ForeignKey(User.id, ondelete="cascade"), nullable=True) user_id = db.Column(db.ForeignKey(User.id, ondelete="cascade"), nullable=False)
contact_id = db.Column( contact_id = db.Column(
db.ForeignKey(Contact.id, ondelete="cascade"), nullable=False db.ForeignKey(Contact.id, ondelete="cascade"), nullable=False
) )
@ -770,6 +770,8 @@ class EmailLog(db.Model, ModelMixin):
refused_email = db.relationship("RefusedEmail") refused_email = db.relationship("RefusedEmail")
forward = db.relationship(Contact) forward = db.relationship(Contact)
contact = db.relationship(Contact)
class Subscription(db.Model, ModelMixin): class Subscription(db.Model, ModelMixin):
# Come from Paddle # Come from Paddle

View file

@ -0,0 +1,33 @@
"""empty message
Revision ID: dbd80d290f04
Revises: f4b8232fa17e
Create Date: 2020-03-20 10:11:59.542933
"""
import sqlalchemy_utils
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision = "dbd80d290f04"
down_revision = "f4b8232fa17e"
branch_labels = None
depends_on = None
def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.alter_column("contact", "user_id", existing_type=sa.INTEGER(), nullable=False)
op.alter_column("email_log", "user_id", existing_type=sa.INTEGER(), nullable=False)
op.alter_column("file", "user_id", existing_type=sa.INTEGER(), nullable=False)
# ### end Alembic commands ###
def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.alter_column("file", "user_id", existing_type=sa.INTEGER(), nullable=True)
op.alter_column("email_log", "user_id", existing_type=sa.INTEGER(), nullable=True)
op.alter_column("contact", "user_id", existing_type=sa.INTEGER(), nullable=True)
# ### end Alembic commands ###