Enum sea_orm::entity::ActiveValue
source · pub enum ActiveValue<V>{
Set(V),
Unchanged(V),
NotSet,
}
Expand description
Defines a stateful value used in ActiveModel.
There are three possible state represented by three enum variants.
- ActiveValue::Set: A defined Value actively being set
- ActiveValue::Unchanged: A defined Value remain unchanged
- ActiveValue::NotSet: An undefined Value
The stateful value is useful when constructing UPDATE SQL statement, see an example below.
§Examples
use sea_orm::tests_cfg::{cake, fruit};
use sea_orm::{entity::*, query::*, DbBackend};
// The code snipped below does an UPDATE operation on a `ActiveValue`
assert_eq!(
Update::one(fruit::ActiveModel {
id: ActiveValue::set(1),
name: ActiveValue::set("Orange".to_owned()),
cake_id: ActiveValue::not_set(),
})
.build(DbBackend::Postgres)
.to_string(),
r#"UPDATE "fruit" SET "name" = 'Orange' WHERE "fruit"."id" = 1"#
);
Variants§
Set(V)
A defined Value actively being set
Unchanged(V)
A defined Value remain unchanged
NotSet
An undefined Value
Implementations§
source§impl<V> ActiveValue<V>
impl<V> ActiveValue<V>
sourcepub fn set(value: V) -> Self
pub fn set(value: V) -> Self
Create an ActiveValue::Set
sourcepub fn is_set(&self) -> bool
pub fn is_set(&self) -> bool
Check if the ActiveValue is ActiveValue::Set
sourcepub fn unchanged(value: V) -> Self
pub fn unchanged(value: V) -> Self
Create an ActiveValue::Unchanged
sourcepub fn is_unchanged(&self) -> bool
pub fn is_unchanged(&self) -> bool
Check if the ActiveValue is ActiveValue::Unchanged
sourcepub fn not_set() -> Self
pub fn not_set() -> Self
Create an ActiveValue::NotSet
sourcepub fn is_not_set(&self) -> bool
pub fn is_not_set(&self) -> bool
Check if the ActiveValue is ActiveValue::NotSet
sourcepub fn take(&mut self) -> Option<V>
pub fn take(&mut self) -> Option<V>
Get the mutable value an ActiveValue also setting itself to ActiveValue::NotSet
sourcepub fn into_value(self) -> Option<Value>
pub fn into_value(self) -> Option<Value>
Check if a Value exists or not
sourcepub fn into_wrapped_value(self) -> ActiveValue<Value>
pub fn into_wrapped_value(self) -> ActiveValue<Value>
Wrap the Value into a ActiveValue<Value>
sourcepub fn reset(&mut self)
pub fn reset(&mut self)
Reset the value from ActiveValue::Unchanged to ActiveValue::Set, leaving ActiveValue::NotSet untouched.
Trait Implementations§
source§impl<V> AsRef<V> for ActiveValue<V>
impl<V> AsRef<V> for ActiveValue<V>
source§impl<V> Clone for ActiveValue<V>
impl<V> Clone for ActiveValue<V>
source§fn clone(&self) -> ActiveValue<V>
fn clone(&self) -> ActiveValue<V>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl<V> Debug for ActiveValue<V>
impl<V> Debug for ActiveValue<V>
source§impl<V> Default for ActiveValue<V>
impl<V> Default for ActiveValue<V>
source§fn default() -> Self
fn default() -> Self
Create an ActiveValue::NotSet