示例#1
0
	def queryByUserId(cls, userid):
		session = DBSession()
		u = session.query(cls).filter(cls.id==userid).first()
		if not u:
			return None
		else:
			return u
示例#2
0
	def queryByAnswerId(cls, answerId, voteValue):
		session = DBSession()
		name = session.query(AutoUser.name).filter(AutoUser.id == AnswerVote.vote_uid, AnswerVote.answer_id == answerId, AnswerVote.vote_value == voteValue).distinct().all()
		namelist = []
		for str in name :
			namelist.append(str[0])
		return namelist
示例#3
0
	def queryByUsername(cls, username):
		""" 按用户名查询用户 """
		session = DBSession()
		u = session.query(cls).filter(cls.user_name==username).first()
		if not u:
			return None
		else:
			return u
示例#4
0
	def queryByUserIdAndLinkId(cls, userId, linkid):
		session = DBSession()
		userVote = session.query(cls).filter(cls.user_id == userId, cls.link_id == linkid).first()
		session.close()
		if not userVote:
			return False
		else:
			print userVote
			return userVote
示例#5
0
	def checkUsername(cls, username):
		'''
		检查用户名是否已经被注册
		'''
		session = DBSession()
		u = session.query(cls).filter(cls.name==username).first()

		if not u:
			return False
		else:
			return u

		print 'hi'
示例#6
0
	def checkEmail(cls, email):
		'''
		检查邮箱是否已经被注册
		'''
		session = DBSession()
		u = session.query(cls).filter(cls.email==email).first()

		if not u:
			return False
		else:
			return u

		print 'hi'
示例#7
0
	def queryUser(cls, username, password):
		# 创建session对象:
		session = DBSession()
		u = session.query(cls).filter(cls.name==username).first()

		if not u:
			return False

		hashed_password = bcrypt.hashpw(password, tornado.escape.utf8(u.hashed_password))

		if u.hashed_password == hashed_password:
			return u
		else:
			print 'wrong  password'
			return False
示例#8
0
	def addAnswerComment(cls, answer_id, uid, message):
		obj = cls(answer_id = answer_id, uid = uid, message = message)
		session = DBSession()
		session.add(obj)
		session.commit()
		session.close()
		return True
示例#9
0
	def add(cls, userid, linkid, type):
		obj = cls(user_id = userid, link_id = linkid, type = type, add_time = long(time.time()))
		session = DBSession()
		session.add(obj)
		session.commit()
		session.close()
		return True
示例#10
0
	def add(cls, session_id, value):
		obj = cls(session_id = session_id, value = value, add_time = long(time.time()))
		session = DBSession()
		session.add(obj)
		session.commit()
		session.close()
		return True
示例#11
0
	def addAnswerVote(cls, answer_id, answer_uid, vote_uid, vote_value):
		obj = cls(answer_id = answer_id, answer_uid = answer_uid, vote_uid = vote_uid, add_time = long(time.time()), vote_value = vote_value, reputation_factor = 1)
		session = DBSession()
		session.add(obj)
		session.commit()
		session.close()
		return True
示例#12
0
	def add(cls, name, url):
		obj = cls(uid = uid, name = name, url = url, add_time = long(time.time()))
		session = DBSession()
		session.add(obj)
		session.commit()
		session.close()
		return True
示例#13
0
	def addAnswer(cls, questionId, answerContent, userId):
		obj = cls(question_id = questionId, answer_content = answerContent, uid = userId, add_time = long(time.time()))
		session = DBSession()
		session.add(obj)
		session.commit()
		session.close()
		return True
示例#14
0
 def addQuestion(cls, question_content, question_detail, published_uid):
     obj = cls(question_content = question_content, question_detail = question_detail, 
         published_uid = published_uid, add_time = long(time.time()), update_time = long(time.time()))
     session = DBSession()
     session.add(obj)
     session.commit()
     session.close()
     return True
示例#15
0
	def addUser(cls, username, email, password):
		hashed_password = bcrypt.hashpw(tornado.escape.utf8(password), bcrypt.gensalt())
		print hashed_password
		ret = cls(name = username, email = email, hashed_password = hashed_password)
		session = DBSession()
		session.add(ret)
		session.commit()
		session.close()
		return True
示例#16
0
	def updateVoteByAnswerId(cls, answer_id, type, against_count, agree_count):
		session = DBSession()
		# 0反对票, 1赞同票
		# if type == '-1' :		
			# print 'update against_count'
			# session.query(cls).filter(cls.answer_id == answer_id).update({cls.against_count:count})
		# elif type == '1' :
			# print 'update agree_count'
			# session.query(cls).filter(cls.answer_id == answer_id).update({cls.agree_count:count})
		session.query(cls).filter(cls.answer_id == answer_id).update({cls.against_count:against_count, cls.agree_count:agree_count})
		session.commit()
		session.close()
示例#17
0
	def follow(cls, fansUid, friendUid):
		''' 
		添加关注
		同时更新用户表的粉丝数和关注数
		'''
		ret = cls(fans_uid = fansUid, friend_uid = friendUid)
		session = DBSession()
		session.add(ret)
		session.commit()
		session.close()


		# 更新uid为fansUid的关注人数和粉丝数
		following = cls.countFollowing(fansUid)
		follower = cls.countFollower(fansUid)
		Users.updateFollowCount(fansUid, follower, following)

		# 更新uid为friendUid的关注人数和粉丝数
		following = cls.countFollowing(friendUid)
		follower = cls.countFollower(friendUid)
		Users.updateFollowCount(friendUid, follower, following)
		return True
示例#18
0
	def unfollow(cls, fansUid, friendUid):
		''' 取消关注 '''
		# 创建session对象:
		session = DBSession()
		ret = session.query(cls).filter(cls.friend_uid==friendUid, cls.fans_uid==fansUid).delete()
		session.commit()
		session.close()


		# 更新uid为fansUid的关注人数和粉丝数
		following = cls.countFollowing(fansUid)
		follower = cls.countFollower(fansUid)
		Users.updateFollowCount(fansUid, follower, following)

		# 更新uid为friendUid的关注人数和粉丝数
		following = cls.countFollowing(friendUid)
		follower = cls.countFollower(friendUid)
		Users.updateFollowCount(friendUid, follower, following)
		return True
示例#19
0
	def queryByQuestionId(cls, questionId):
		session = DBSession()
		answers = session.query(cls).filter(cls.question_id == questionId).all()
		return answers
示例#20
0
	def queryByAnswerId(cls, answerId):
		session = DBSession()
		answer = session.query(cls).filter(cls.answer_id == answerId).first()
		print "answer[0].uid", answer.uid
		return answer
示例#21
0
	def queryByAnswerId(cls, answerId):
		session = DBSession()
		answer = session.query(cls).filter(cls.answer_id == answerId)
		return answer
示例#22
0
	def queryById(cls, sessionId):
		session = DBSession()
		captcha = session.query(cls).filter(cls.session_id == session_id)
		return captcha
示例#23
0
import sys
sys.path.append("..")
from db.dbSession import BaseModel, DBSession
from sqlalchemy import Column, String, Integer

class AutoUser(BaseModel):
    """
    user model
    """
    __tablename__ = 'authors'

    id = Column(Integer, primary_key=True, nullable=False)
    name = Column(String(64), nullable=False)
    hashed_password = Column(String(64), nullable=False)
    email = Column(String(64), nullable=False)



if __name__ == "__main__":
	# 创建session对象:
	session = DBSession()
	# 创建新User对象:
	new_user = AutoUser(id='6', name='Bob', hashed_password='******', email = '*****@*****.**')
	# 添加到session:
	session.add(new_user)
	# 提交即保存到数据库:
	session.commit()
	# 关闭session:
	session.close()

示例#24
0
	def queryAll(cls):
		session = DBSession()
		linkList = session.query(cls)
		return linkList
示例#25
0
 def queryAllQuestions(cls):
     session = DBSession()
     questions = session.query(cls)
     return questions
示例#26
0
    @classmethod
    def addQuestion(cls, question_content, question_detail, published_uid):
        obj = cls(question_content = question_content, question_detail = question_detail, 
            published_uid = published_uid, add_time = long(time.time()), update_time = long(time.time()))
        session = DBSession()
        session.add(obj)
        session.commit()
        session.close()
        return True




if __name__ == "__main__":
    # 创建session对象:
    session = DBSession()
    # 创建新User对象:
    #new_user = AutoUser(id='6', name='Bob', hashed_password='******', email = '*****@*****.**')
    # 添加到session:
    #session.add(new_user)

    query = session.query(Question)
    for question in query:
        print question.question_content
        print question.question_detail
        print question.comment_count
    # 提交即保存到数据库:
    session.commit()
    # 关闭session:
    session.close()
示例#27
0
	def queryById(cls, catalogId):
		session = DBSession()
		answer = session.query(cls).filter(cls.id == catalogId)
		return answer
示例#28
0
	def queryAllUsers(cls):
		# 创建session对象:
		session = DBSession()
		u = session.query(cls).all()
		return u
示例#29
0
 def queryById(cls, questionId):
     session = DBSession()
     question = session.query(cls).filter(cls.question_id == questionId).first()
     return question
示例#30
0
	def queryPageCount(cls):
		session = DBSession()
		count = session.query(cls)