From 22ab9479b03f37595ef807d001ae59a6685a5e2a Mon Sep 17 00:00:00 2001 From: Matthieu Bessat Date: Mon, 30 Mar 2026 21:54:23 +0200 Subject: [PATCH] feat(reference): add target extractor and constructor helpers on ForeignRef --- lib/sqlxgentools_misc/src/lib.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/sqlxgentools_misc/src/lib.rs b/lib/sqlxgentools_misc/src/lib.rs index c6fdddf..3f0f36c 100644 --- a/lib/sqlxgentools_misc/src/lib.rs +++ b/lib/sqlxgentools_misc/src/lib.rs @@ -38,12 +38,24 @@ impl Serialize for ForeignRef { } impl ForeignRef { + pub fn from_id(entity_id: &str) -> ForeignRef { + ForeignRef { + target_type: PhantomData, + target_id: entity_id.into() + } + } pub fn new(entity: &T) -> ForeignRef { 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