浏览代码

remove AliasMailbox.user_id column

Son NK 5 年之前
父节点
当前提交
0b652cf3f8
共有 5 个文件被更改,包括 35 次插入12 次删除
  1. 1 3
      app/api/views/alias.py
  2. 1 3
      app/dashboard/views/custom_alias.py
  3. 0 2
      app/models.py
  4. 31 0
      migrations/versions/2020_051516_552d735a2f1f_.py
  5. 2 4
      server.py

+ 1 - 3
app/api/views/alias.py

@@ -309,9 +309,7 @@ def update_alias(alias_id):
             if i == 0:
                 alias.mailbox_id = mailboxes[0].id
             else:
-                AliasMailbox.create(
-                    user_id=alias.user_id, alias_id=alias.id, mailbox_id=mailbox.id
-                )
+                AliasMailbox.create(alias_id=alias.id, mailbox_id=mailbox.id)
         # <<< END update alias mailboxes >>>
 
         changed = True

+ 1 - 3
app/dashboard/views/custom_alias.py

@@ -111,9 +111,7 @@ def custom_alias():
 
                 for i in range(1, len(mailboxes)):
                     AliasMailbox.create(
-                        user_id=alias.user_id,
-                        alias_id=alias.id,
-                        mailbox_id=mailboxes[i].id,
+                        alias_id=alias.id, mailbox_id=mailboxes[i].id,
                     )
 
                 # get the custom_domain_id if alias is created with a custom domain

+ 0 - 2
app/models.py

@@ -1304,8 +1304,6 @@ class AliasMailbox(db.Model, ModelMixin):
         db.UniqueConstraint("alias_id", "mailbox_id", name="uq_alias_mailbox"),
     )
 
-    user_id = db.Column(db.ForeignKey(User.id, ondelete="cascade"), nullable=False)
-
     alias_id = db.Column(db.ForeignKey(Alias.id, ondelete="cascade"), nullable=False)
     mailbox_id = db.Column(
         db.ForeignKey(Mailbox.id, ondelete="cascade"), nullable=False

+ 31 - 0
migrations/versions/2020_051516_552d735a2f1f_.py

@@ -0,0 +1,31 @@
+"""empty message
+
+Revision ID: 552d735a2f1f
+Revises: 1759f73274ee
+Create Date: 2020-05-15 16:33:23.558895
+
+"""
+import sqlalchemy_utils
+from alembic import op
+import sqlalchemy as sa
+
+
+# revision identifiers, used by Alembic.
+revision = '552d735a2f1f'
+down_revision = '1759f73274ee'
+branch_labels = None
+depends_on = None
+
+
+def upgrade():
+    # ### commands auto generated by Alembic - please adjust! ###
+    op.drop_constraint('alias_mailbox_user_id_fkey', 'alias_mailbox', type_='foreignkey')
+    op.drop_column('alias_mailbox', 'user_id')
+    # ### end Alembic commands ###
+
+
+def downgrade():
+    # ### commands auto generated by Alembic - please adjust! ###
+    op.add_column('alias_mailbox', sa.Column('user_id', sa.INTEGER(), autoincrement=False, nullable=False))
+    op.create_foreign_key('alias_mailbox_user_id_fkey', 'alias_mailbox', 'users', ['user_id'], ['id'], ondelete='CASCADE')
+    # ### end Alembic commands ###

+ 2 - 4
server.py

@@ -175,11 +175,9 @@ def fake_data():
 
         if i % 5 == 0:
             if i % 2 == 0:
-                AliasMailbox.create(
-                    user_id=user.id, alias_id=a.id, mailbox_id=user.default_mailbox_id
-                )
+                AliasMailbox.create(alias_id=a.id, mailbox_id=user.default_mailbox_id)
             else:
-                AliasMailbox.create(user_id=user.id, alias_id=a.id, mailbox_id=m1.id)
+                AliasMailbox.create(alias_id=a.id, mailbox_id=m1.id)
         db.session.commit()
 
         # some aliases don't have any activity