我有一个 postgresql 数据库,我正在尝试使用 Knex 进行以下迁移以将不可为空的引用列添加到现有表中:
exports.up = function (knex) {
return knex.schema.table('Donation', (table) => {
table.integer('causeId').notNullable();
table.foreign('causeId').references('Cause.id');
});
};
Run Code Online (Sandbox Code Playgroud)
当我运行此迁移时,由于现有行,我收到以下错误:
error: alter table "Donation" add column "causeId" integer not null - column "causeId" contains null values
Run Code Online (Sandbox Code Playgroud)
我只想为现有行使用默认值作为列种子。对于后续插入,如果未提供值,我宁愿插入失败,因此.notNullable().defaultTo(...)无法工作。
我想也许defaultTo()只用于初始迁移,然后删除限制,但我对如何完成此任务一无所知。
任何帮助,将不胜感激!
我正在为我的应用程序创建一个通用的模态 React 组件来显示各种不同的东西。我希望它足够灵活以显示纯 HTML 和交互式 React 组件。
我已经通过将可显示组件存储在我的 Redux 模态减速器中来使其工作。到目前为止,我还没有遇到任何问题。
以前有没有人采用过这种方法?我无法在网上找到任何示例,所以我不确定这是否是不好的做法。如果是这样,您是否建议使用另一种方法来处理?
database ×1
javascript ×1
knex.js ×1
modal-dialog ×1
postgresql ×1
react-redux ×1
reactjs ×1
redux ×1