pub struct FeedItem {
pub title: String,
pub slug: String,
pub summary: Option<String>,
pub content_html: Option<String>,
pub published_at: DateTime<Utc>,
pub updated_at: DateTime<Utc>,
pub tags: Vec<String>,
}Expand description
Feed 条目 DTO(RSS 2.0 / JSON Feed 共享)。
与 PostListItem 不同,这里携带已渲染的 content_html 全文,
供订阅端点直接输出;缓存单键 CacheKey::Feed 存 Vec<FeedItem>。
Fields§
§title: String文章标题。
slug: StringURL slug,用于生成文章链接。
summary: Option<String>摘要,可选。
content_html: Option<String>渲染后的 HTML 内容,可选(历史文章可能为空)。
published_at: DateTime<Utc>正式发布时间(已发布文章必有值,行映射时回退 updated_at)。
updated_at: DateTime<Utc>最后更新时间。
关联标签列表。
Trait Implementations§
Source§impl<'de> Deserialize<'de> for FeedItem
impl<'de> Deserialize<'de> for FeedItem
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for FeedItem
Auto Trait Implementations§
impl Freeze for FeedItem
impl RefUnwindSafe for FeedItem
impl Send for FeedItem
impl Sync for FeedItem
impl Unpin for FeedItem
impl UnsafeUnpin for FeedItem
impl UnwindSafe for FeedItem
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> InitializeFromFunction<T> for T
impl<T> InitializeFromFunction<T> for T
§fn initialize_from_function(f: fn() -> T) -> T
fn initialize_from_function(f: fn() -> T) -> T
Create an instance of this type from an initialization function
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
§fn super_from(input: T) -> O
fn super_from(input: T) -> O
Convert from a type to another type.
§impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
§fn super_into(self) -> O
fn super_into(self) -> O
Convert from a type to another type.
§impl<T> Transportable for Twhere
T: Serialize + DeserializeOwned + 'static,
impl<T> Transportable for Twhere
T: Serialize + DeserializeOwned + 'static,
§fn transport_to_bytes(&self) -> Vec<u8> ⓘ
fn transport_to_bytes(&self) -> Vec<u8> ⓘ
Serialize the type to a byte vector for transport
§fn transport_from_bytes(bytes: &[u8]) -> Result<T, Error<Error>>
fn transport_from_bytes(bytes: &[u8]) -> Result<T, Error<Error>>
Deserialize the type from a byte slice