feat(reference): add target extractor and constructor helpers on ForeignRef

This commit is contained in:
Matthieu Bessat 2026-03-30 21:54:23 +02:00
commit 22ab9479b0

View file

@ -38,12 +38,24 @@ impl<T: Sized + DatabaseLine> Serialize for ForeignRef<T> {
}
impl<T: Sized + DatabaseLine> ForeignRef<T> {
pub fn from_id(entity_id: &str) -> ForeignRef<T> {
ForeignRef {
target_type: PhantomData,
target_id: entity_id.into()
}
}
pub fn new(entity: &T) -> ForeignRef<T> {
ForeignRef {
target_type: PhantomData,
target_id: entity.id(),
}
}
pub fn target_id_str(&self) -> &str {
&self.target_id.as_str()
}
pub fn to_string(&self) -> String {
self.target_id.clone()
}
}
impl<'r, DB: Database, T: Sized + DatabaseLine> Decode<'r, DB> for ForeignRef<T>