Hello,
I'm trying to use ArrayString with diesel and it fails to derive AsChangeset.
table! {
...
users (id) {
...
password_hash -> Varchar,
...
}
}
type PasswordHash = ArrayString<U64>;
#[derive(AsChangeset, Default, Debug)]
#[table_name = "users"]
pub struct UserSettingsChangeset {
pub password_hash: Option<PasswordHash>,
...
}
will lead to:
type mismatch resolving
<&arraystring::ArrayString<arraystring::typenum::UInt<arraystring::typenum::UInt<arraystring::typenum::UInt<arraystring::typenum::UInt<arraystring::typenum::UInt<arraystring::typenum::UInt<arraystring::typenum::UTerm, arraystring::typenum::B1>, arraystring::typenum::B1>, arraystring::typenum::B0>, arraystring::typenum::B0>, arraystring::typenum::B1>, arraystring::typenum::B0>> as diesel::Expression>::SqlType == diesel::sql_types::Nullable<diesel::sql_types::Text>
- expected struct
diesel::sql_types::Text, found struct diesel::sql_types::Nullable
- expected struct
diesel::sql_types::Text
found struct diesel::sql_types::Nullable<diesel::sql_types::Text>
It works with normal String...Option<T> in AsChangeset should just skip the field during update.
Any ideas what I'm doing wrong? Thank you
Hello,
I'm trying to use ArrayString with diesel and it fails to derive AsChangeset.
will lead to:
type mismatch resolving
<&arraystring::ArrayString<arraystring::typenum::UInt<arraystring::typenum::UInt<arraystring::typenum::UInt<arraystring::typenum::UInt<arraystring::typenum::UInt<arraystring::typenum::UInt<arraystring::typenum::UTerm, arraystring::typenum::B1>, arraystring::typenum::B1>, arraystring::typenum::B0>, arraystring::typenum::B0>, arraystring::typenum::B1>, arraystring::typenum::B0>> as diesel::Expression>::SqlType == diesel::sql_types::Nullable<diesel::sql_types::Text>diesel::sql_types::Text, found structdiesel::sql_types::Nullablediesel::sql_types::Textfound struct
diesel::sql_types::Nullable<diesel::sql_types::Text>It works with normal
String...Option<T>inAsChangesetshould just skip the field during update.Any ideas what I'm doing wrong? Thank you