moo.core.models.mail.MessageRecipient
- class moo.core.models.mail.MessageRecipient(*args, **kwargs)
One row per (message, recipient) pair. Tracks per-recipient read and deleted state.
sent_atis denormalized frommessage.sent_atso that mailbox list queries are single-table scans.Permission guards:
save()on an existing row requires the caller to be a wizard OR the caller to be the recipient of this row. This allows the SDK’smark_read()/delete_message()/undelete_message()helpers to work for the owning player while blocking attempts to redirect the row to a different recipient. INSERTs (pk is None) are always allowed.delete()(hard-delete) requires the caller to be a wizard. Non-wizard players should use thedelete_message()SDK function, which performs a soft-delete by settingdeleted = True.
- __init__(*args, **kwargs)
Methods
__init__(*args, **kwargs)adelete([using, keep_parents])arefresh_from_db([using, fields])asave([force_insert, force_update, using, ...])check(**kwargs)clean()Hook for doing any extra model-wide validation after clean() has been called on every field by self.clean_fields.
clean_fields([exclude])Clean all fields and raise a ValidationError containing a dict of all validation errors if any occur.
date_error_message(lookup_type, field_name, ...)delete(*args, **kwargs)from_db(db, field_names, values)full_clean([exclude, validate_unique, ...])Call clean_fields(), clean(), validate_unique(), and validate_constraints() on the model.
get_constraints()get_deferred_fields()Return a set containing names of deferred fields for this instance.
prepare_database_save(field)refresh_from_db([using, fields])Reload field values from the database.
save(*args, **kwargs)Save the current instance.
save_base([raw, force_insert, force_update, ...])Handle the parts of saving which should be done only once per save, yet need to be done in raw saves, too.
serializable_value(field_name)Return the value of the field name for this instance.
unique_error_message(model_class, unique_check)validate_constraints([exclude])validate_unique([exclude])Check unique constraints on the model and raise ValidationError if any failed.
Attributes
deletedA wrapper for a deferred-loading field.
idA wrapper for a deferred-loading field.
messageAccessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
message_idobjectspkreadA wrapper for a deferred-loading field.
recipientAccessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
recipient_idsent_atA wrapper for a deferred-loading field.