boss_db:save_record 不适用于 PostgreSQL 适配器

boss_db:save_record not working with PostgreSQL adapter

我正在尝试使用 pgsql 适配器将 BossRecord 保存到数据库,方法如下:

boss_db:save_record(admins:new("admins-1", 1)). 

在 ChicagoBoss 的 shell 这个 returns:

{ok,{admins,"admins-1",1}}

但记录实际上并没有保存在数据库中。

这是我的 table:

CREATE TABLE admins("
        "ID integer primary key,"
        "user_ID integer"
    ")

我的模特:

-module(admins, [Id, UserId]).
-compile(export_all).

谢谢。

感谢 Evan Miller,我找到了解决方案,就像这里他说的 evan miller ChicagoBoss blog "the Id field of each model is assumed to be an integer supplied by the database (e.g., a SERIAL type in Postgres)... specifying an Id value other than the atom 'id' for a new record will result in an error"

所以我将 table 更改为:

        "CREATE TABLE IF NOT EXISTS admins("
            "ID serial primary key,"
            "user_ID integer"
        ")"

并更改模型(以指定 table 和列的名称):

-module(admin, [Id, UserId]).
-columns([{id, "ID"}, {user_id, "user_ID"}]).
-table("admins").

并使用 'id' 原子保存记录:

boss_db:save_record(admins:new(id, 1)).