Я использую Diesel с Postgres, и запрос, сгенерированный дизелем, не включает схему в качестве префикса в предложении from.Например, у меня есть таблица с именем узлов, чья таблица!выглядит следующим образом:
table! {
nodes (id) {
id -> BigInt,
chunks -> Bytea,
content_length -> BigInt,
content_type -> Text,
uri -> Text,
checksum -> Nullable<Text>,
} }
Когда я подключаюсь к postgres, используя одного пользователя, владеющего базой данных, сгенерированный запрос работает очень хорошо, но если я подключаюсь к postgres, используя пользователя, который не является владельцем базы данных,сгенерированный запрос не работает, потому что дизель не помещает общедоступную схему перед именем таблицы в предложении from.
Запрос должен иметь Select * from public."nodes"
префикс public перед именем табе, но дизель генерирует запрос, подобныйSelect * from "nodes"
, который работает, только если пользователь, вошедший в базу данных, является владельцем базы данных.
Спасибо!