小编Are*_*k S的帖子

如何在Alembic升级脚本中执行插入和更新?

我需要在Alembic升级期间更改数据.

我目前在第一次修订中有一个'玩家'表:

def upgrade():
    op.create_table('player',
        sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('name', sa.Unicode(length=200), nullable=False),
        sa.Column('position', sa.Unicode(length=200), nullable=True),
        sa.Column('team', sa.Unicode(length=100), nullable=True)
        sa.PrimaryKeyConstraint('id')
    )
Run Code Online (Sandbox Code Playgroud)

我想介绍一个'团队'表.我创建了第二个版本:

def upgrade():
    op.create_table('teams',
        sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('name', sa.String(length=80), nullable=False)
    )
    op.add_column('players', sa.Column('team_id', sa.Integer(), nullable=False))
Run Code Online (Sandbox Code Playgroud)

我想第二次迁移也添加以下数据:

  1. 填充团队表:

    INSERT INTO teams (name) SELECT DISTINCT team FROM players;
    
    Run Code Online (Sandbox Code Playgroud)
  2. 根据players.team名称更新players.team_id:

    UPDATE players AS p JOIN teams AS t SET p.team_id = t.id WHERE p.team = t.name;
    
    Run Code Online (Sandbox Code Playgroud)

如何在升级脚本中执行插入和更新?

python sqlalchemy alembic

75
推荐指数
3
解决办法
3万
查看次数

alembic修订版 - 多个头(由于分支)错误

我有一个应用程序,我想今天为它创建一个新的迁移.我跑的时候

$ alembic revision -m "__name__"
Run Code Online (Sandbox Code Playgroud)

我收到了一条消息

Only a single head is supported. The script directory has multiple heads (due branching), which must be resolved by manually editing the revision files to form a linear sequence. 
Run `alembic branches` to see the divergence(s).
Run Code Online (Sandbox Code Playgroud)

运行

alembic branches
Run Code Online (Sandbox Code Playgroud)

什么都没有

我是alembic的新手.有2个开发人员正在使用这个应用程序,我们有2个git分支 - 主和开发(我不确定这是否与它有关).

关于这是什么的任何线索?

python git alembic

27
推荐指数
4
解决办法
1万
查看次数

Javascript缩小为什么是false替换为!1并且使用!0

我正在使用Enyo2编写一个应用程序,它带有一个基于UglifyJS的缩小工具.我注意到了:

var t = false
Run Code Online (Sandbox Code Playgroud)

被替换为

var t=!1
Run Code Online (Sandbox Code Playgroud)

同样的方式将被替换为!0.我确信有一个很好的解释,我找不到它.任何的想法?

javascript minify uglifyjs

20
推荐指数
3
解决办法
4085
查看次数

在伦敦 - BST的时刻js utc()时间

我正在使用momentjs lib更新一些ajax动作的文本.我需要做的是在伦敦设置当前日期和时间.我正在使用moment.utc()函数,但由于夏天我只有一个小时.

例如,在14:26运行它

console.log( moment.utc().format('HH:mm:ss') );
Run Code Online (Sandbox Code Playgroud)

我得到了13:26:53.

有关如何解决此问题的任何想法?

javascript datetime momentjs

6
推荐指数
1
解决办法
8198
查看次数

标签 统计

alembic ×2

javascript ×2

python ×2

datetime ×1

git ×1

minify ×1

momentjs ×1

sqlalchemy ×1

uglifyjs ×1