database
: Add insert
functions to all Insert
structs
This commit is contained in:
parent
79e604eb96
commit
d11934952f
1 changed files with 139 additions and 0 deletions
|
@ -28,6 +28,7 @@
|
||||||
|
|
||||||
use diesel::deserialize::FromSql;
|
use diesel::deserialize::FromSql;
|
||||||
use diesel::{AsExpression, Associations, FromSqlRow, Identifiable, Insertable, IntoSql, PgTextExpressionMethods, QueryResult, Queryable, QueryableByName, Selectable, SelectableHelper, ExpressionMethods, BelongingToDsl};
|
use diesel::{AsExpression, Associations, FromSqlRow, Identifiable, Insertable, IntoSql, PgTextExpressionMethods, QueryResult, Queryable, QueryableByName, Selectable, SelectableHelper, ExpressionMethods, BelongingToDsl};
|
||||||
|
use diesel::dsl::insert_into;
|
||||||
use diesel::pg::{Pg, PgConnection};
|
use diesel::pg::{Pg, PgConnection};
|
||||||
use diesel::serialize::{Output, ToSql};
|
use diesel::serialize::{Output, ToSql};
|
||||||
use diesel_async::AsyncPgConnection;
|
use diesel_async::AsyncPgConnection;
|
||||||
|
@ -416,6 +417,29 @@ impl MetaSubject {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl MetaSubjectInsert {
|
||||||
|
/// Syncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub fn insert(self, conn: &mut PgConnection) -> QueryResult<MetaSubject> {
|
||||||
|
use diesel::RunQueryDsl;
|
||||||
|
use schema::meta_subjects::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_subjects)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Asyncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub async fn ainsert(self, conn: &mut AsyncPgConnection) -> QueryResult<MetaSubject> {
|
||||||
|
use diesel_async::RunQueryDsl;
|
||||||
|
use schema::meta_subjects::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_subjects)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
.await
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl MetaAlias {
|
impl MetaAlias {
|
||||||
/// Synchronously query the records matching the given document and resource.
|
/// Synchronously query the records matching the given document and resource.
|
||||||
pub fn query_matching(conn: &mut PgConnection, doc: &str, subject: &str) -> QueryResult<Vec<Self>> {
|
pub fn query_matching(conn: &mut PgConnection, doc: &str, subject: &str) -> QueryResult<Vec<Self>> {
|
||||||
|
@ -451,6 +475,29 @@ impl MetaAlias {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl MetaAliasInsert {
|
||||||
|
/// Syncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub fn insert(self, conn: &mut PgConnection) -> QueryResult<MetaAlias> {
|
||||||
|
use diesel::RunQueryDsl;
|
||||||
|
use schema::meta_aliases::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_aliases)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Asyncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub async fn ainsert(self, conn: &mut AsyncPgConnection) -> QueryResult<MetaAlias> {
|
||||||
|
use diesel_async::RunQueryDsl;
|
||||||
|
use schema::meta_aliases::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_aliases)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
.await
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl MetaLink {
|
impl MetaLink {
|
||||||
/// Synchronously query the records matching the given document and resource.
|
/// Synchronously query the records matching the given document and resource.
|
||||||
pub async fn query_matching(conn: &mut PgConnection, doc: &str, subject: &str) -> QueryResult<Vec<Self>> {
|
pub async fn query_matching(conn: &mut PgConnection, doc: &str, subject: &str) -> QueryResult<Vec<Self>> {
|
||||||
|
@ -486,6 +533,29 @@ impl MetaLink {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl MetaLinkInsert {
|
||||||
|
/// Syncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub fn insert(self, conn: &mut PgConnection) -> QueryResult<MetaLink> {
|
||||||
|
use diesel::RunQueryDsl;
|
||||||
|
use schema::meta_links::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_links)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Asyncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub async fn ainsert(self, conn: &mut AsyncPgConnection) -> QueryResult<MetaLink> {
|
||||||
|
use diesel_async::RunQueryDsl;
|
||||||
|
use schema::meta_links::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_links)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
.await
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl MetaLinkProperty {
|
impl MetaLinkProperty {
|
||||||
/// Synchronously query the records belonging to the given [`MetaLink`]s.
|
/// Synchronously query the records belonging to the given [`MetaLink`]s.
|
||||||
pub fn query_by_link(conn: &mut PgConnection, links: &[MetaLink]) -> QueryResult<Vec<Self>> {
|
pub fn query_by_link(conn: &mut PgConnection, links: &[MetaLink]) -> QueryResult<Vec<Self>> {
|
||||||
|
@ -505,6 +575,29 @@ impl MetaLinkProperty {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl MetaLinkPropertyInsert {
|
||||||
|
/// Syncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub fn insert(self, conn: &mut PgConnection) -> QueryResult<MetaLinkProperty> {
|
||||||
|
use diesel::RunQueryDsl;
|
||||||
|
use schema::meta_link_properties::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_link_properties)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Asyncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub async fn ainsert(self, conn: &mut AsyncPgConnection) -> QueryResult<MetaLinkProperty> {
|
||||||
|
use diesel_async::RunQueryDsl;
|
||||||
|
use schema::meta_link_properties::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_link_properties)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
.await
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl MetaLinkTitle {
|
impl MetaLinkTitle {
|
||||||
/// Synchronously query the records belonging to the given [`MetaLink`]s.
|
/// Synchronously query the records belonging to the given [`MetaLink`]s.
|
||||||
pub fn query_by_link(conn: &mut PgConnection, links: &[MetaLink]) -> QueryResult<Vec<Self>> {
|
pub fn query_by_link(conn: &mut PgConnection, links: &[MetaLink]) -> QueryResult<Vec<Self>> {
|
||||||
|
@ -524,6 +617,29 @@ impl MetaLinkTitle {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl MetaLinkTitleInsert {
|
||||||
|
/// Syncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub fn insert(self, conn: &mut PgConnection) -> QueryResult<MetaLinkTitle> {
|
||||||
|
use diesel::RunQueryDsl;
|
||||||
|
use schema::meta_link_titles::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_link_titles)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Asyncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub async fn ainsert(self, conn: &mut AsyncPgConnection) -> QueryResult<MetaLinkTitle> {
|
||||||
|
use diesel_async::RunQueryDsl;
|
||||||
|
use schema::meta_link_titles::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_link_titles)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
.await
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl MetaProperty {
|
impl MetaProperty {
|
||||||
/// Synchronously query the records matching the given document and resource.
|
/// Synchronously query the records matching the given document and resource.
|
||||||
pub fn query_matching(conn: &mut PgConnection, doc: &str, subject: &str) -> QueryResult<Vec<Self>> {
|
pub fn query_matching(conn: &mut PgConnection, doc: &str, subject: &str) -> QueryResult<Vec<Self>> {
|
||||||
|
@ -558,3 +674,26 @@ impl MetaProperty {
|
||||||
.await
|
.await
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl MetaPropertyInsert {
|
||||||
|
/// Syncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub fn insert(self, conn: &mut PgConnection) -> QueryResult<MetaProperty> {
|
||||||
|
use diesel::RunQueryDsl;
|
||||||
|
use schema::meta_properties::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_properties)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Asyncronously insert the record into the table, returning the full inserted record.
|
||||||
|
pub async fn ainsert(self, conn: &mut AsyncPgConnection) -> QueryResult<MetaProperty> {
|
||||||
|
use diesel_async::RunQueryDsl;
|
||||||
|
use schema::meta_properties::dsl::*;
|
||||||
|
|
||||||
|
insert_into(meta_properties)
|
||||||
|
.values(self)
|
||||||
|
.get_result(conn)
|
||||||
|
.await
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue