本文整理汇总了Python中helios_auth.models.User.send_message方法的典型用法代码示例。如果您正苦于以下问题:Python User.send_message方法的具体用法?Python User.send_message怎么用?Python User.send_message使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类helios_auth.models.User
的用法示例。
在下文中一共展示了User.send_message方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Voter
# 需要导入模块: from helios_auth.models import User [as 别名]
# 或者: from helios_auth.models.User import send_message [as 别名]
#.........这里部分代码省略.........
@classmethod
def get_by_election_and_voter_id(cls, election, voter_id):
try:
return cls.objects.get(election = election, voter_login_id = voter_id)
except cls.DoesNotExist:
return None
@classmethod
def get_by_election_and_user(cls, election, user):
try:
return cls.objects.get(election = election, user = user)
except cls.DoesNotExist:
return None
@classmethod
def get_by_election_and_uuid(cls, election, uuid):
query = cls.objects.filter(election = election, uuid = uuid)
try:
return query[0]
except:
return None
@classmethod
def get_by_user(cls, user):
return cls.objects.select_related().filter(user = user).order_by('-cast_at')
@property
def datatype(self):
return self.election.datatype.replace('Election', 'Voter')
@property
def vote_tinyhash(self):
"""
get the tinyhash of the latest castvote
"""
if not self.vote_hash:
return None
return CastVote.objects.get(vote_hash = self.vote_hash).vote_tinyhash
@property
def election_uuid(self):
return self.election.uuid
@property
def name(self):
return self.user.name
@property
def voter_id(self):
return self.user.user_id
@property
def voter_id_hash(self):
if self.voter_login_id:
# for backwards compatibility with v3.0, and since it doesn't matter
# too much if we hash the email or the unique login ID here.
value_to_hash = self.voter_login_id
else:
value_to_hash = self.voter_id
try:
return utils.hash_b64(value_to_hash)
except:
try:
return utils.hash_b64(value_to_hash.encode('latin-1'))
except:
return utils.hash_b64(value_to_hash.encode('utf-8'))
@property
def voter_type(self):
return self.user.user_type
@property
def display_html_big(self):
return self.user.display_html_big
def send_message(self, subject, body):
self.user.send_message(subject, body)
def generate_password(self, length=10):
if self.voter_password:
raise Exception("password already exists")
self.voter_password = heliosutils.random_string(length)
def store_vote(self, cast_vote):
# only store the vote if it's cast later than the current one
if self.cast_at and cast_vote.cast_at < self.cast_at:
return
self.vote = cast_vote.vote
self.vote_hash = cast_vote.vote_hash
self.cast_at = cast_vote.cast_at
self.save()
def last_cast_vote(self):
return CastVote(vote = self.vote, vote_hash = self.vote_hash, cast_at = self.cast_at, voter=self)
示例2: Voter
# 需要导入模块: from helios_auth.models import User [as 别名]
# 或者: from helios_auth.models.User import send_message [as 别名]
#.........这里部分代码省略.........
return None
@classmethod
def get_by_user(cls, user):
return cls.objects.select_related().filter(user = user).order_by('-cast_at')
@property
def datatype(self):
return self.election.datatype.replace('Election', 'Voter')
@property
def vote_tinyhash(self):
"""
get the tinyhash of the latest castvote
"""
if not self.vote_hash:
return None
return CastVote.objects.get(vote_hash = self.vote_hash).vote_tinyhash
@property
def election_uuid(self):
return self.election.uuid
@property
def name(self):
return self.user.name
@property
def voter_id(self):
return self.user.user_id
@property
def voter_id_hash(self):
if self.voter_login_id:
# for backwards compatibility with v3.0, and since it doesn't matter
# too much if we hash the email or the unique login ID here.
value_to_hash = self.voter_login_id.strip()
else:
value_to_hash = self.voter_id.strip()
try:
return utils.hash_b64(value_to_hash)
except:
try:
return utils.hash_b64(value_to_hash.encode('latin-1'))
except:
return utils.hash_b64(value_to_hash.encode('utf-8'))
@property
def voter_type(self):
return self.user.user_type
@property
def display_html_big(self):
return self.user.display_html_big
def send_message(self, subject, body):
self.user.send_message(subject, body)
def generate_password(self, length=10):
if self.voter_password:
raise Exception(_('password already exists'))
# CSV_VOTERS_PASSWORD_SIMPLIFIED means password generated with 6 letters and just in lowercase.
if settings.CSV_VOTERS_PASSWORD_SIMPLIFIED:
length = 06
self.voter_password = heliosutils.random_string(length, alphabet='abcdefghijkmnopqrstuvwxyz').strip()
else:
self.voter_password = heliosutils.random_string(length, alphabet='abcdefghijkmnopqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ23456789').strip()
# metadata for the election
@property
def metadata(self):
return {
'voter_email': self.voter_email,
'uuid': self.uuid,
'voter_name': self.voter_name,
'vote_hash': self.vote_hash,
'cast_at': self.cast_at,
'alias': self.alias,
'user_id': self.user.user_id,
'election id': self.election.id,
'election name': self.election.name,
'election url': self.election.url
}
def store_vote(self, cast_vote):
# only store the vote if it's cast later than the current one
if self.cast_at and cast_vote.cast_at < self.cast_at:
return
self.vote = cast_vote.vote
self.vote_hash = cast_vote.vote_hash
self.cast_at = cast_vote.cast_at
self.save()
def last_cast_vote(self):
return CastVote(vote = self.vote, vote_hash = self.vote_hash, cast_at = self.cast_at, voter=self)