Еще не запускал но дизель оказался не страшный
diesel::insert_into(settings::table)
.values(&setting)
.on_conflict(key)
.do_update()
.set(value.eq(excluded(value)))
.execute(&mut conn)
.context("Error saving new post")?;
правда генерит всякое и надо утилиту запускать, но я подозреваю можно и обойтись, разбираться не стану пока что.
так как там пока запросов немного, лучше сейчас. Зато теперь не надо писать всякий мусороклеевой код тоннами на каждый чих. Попробую и если что верну rusqlite и где-то там была либа, которая может модели в параметры превращать автоматом...можно заюзать ее. Квери билдеры я не шибко люблю, но попробую.
Не нравится только, что что бы метаданные для схем генерить утилита нужна, либо руками писать. Жаль они макрос не сделали для этого, который бы автоматом все делал. Но в целом пойдет.