zoukankan      html  css  js  c++  java
  • 【从0开始Tornado网站】主页登录和显示的最新文章

            日志首页只能放置在它,这里的美,该<form>使用bootstrap的form-inline修改后的类,例如以下列方式:


    前台代码例如以下:

    {%extends 'main.html'%}
    {%block header%}
    <ul class='nav nav-pills'>
    	<li><a href='/' class='h4 text-primary'>首页</a></li>
    	<li><a href='/member' class='h4 text-primary'>成员</a></li>
    	<li><a href='/chat/1' class='h4 text-primary'>群聊</a></li>
    	{%if not cookieName%}
    	<form action='/' method='post' class='form-inline'>
    		<div class='form-group'>
    			<label class='sr-only'>username</label>
    			<input type='text' name='username' class='form-control' placeholder='username'/>
    		</div>
    		<div class='form-group'>
    			<label class='sr-only'>密码</label>
    			<input type='password' name='password' class='form-control' placeholder='密码'/>
    		</div>
    		<button type='submit' class='btn btn-success'>登录</button>
    		<a href='/register'>无帐号,请点击注冊</a>
    	</form>
    	{%else%}
    	<li><a href='/user/{{cookieName}}' class='h4 text-primary'>欢迎:{{cookieName}}</a></li>
    	<li><a href='/logout' class='h4 text-primary'>注销</a></li>
    	{%end%}
    </ul>
    {%end%}
    {%block content%}
    <ul>
    	{%for i in blogs%}
    	<li><a href='/user/{{i[1]}}' class='text-success h4'>【{{i[1]}}】</a><a href='/blog/{{i[0]}}' class='text-primary h3'>{{i[2]}}</a></p><p class='text-muted h6'>{{i[3]}}</p></li>
    	<br/>
    	{%end%}
    </ul>
    {%end%}
    

    后台代码例如以下:

    class indexHandler(tornado.web.RequestHandler):
    	def get(self):
    		name=self.get_cookie('hackerName')
    		blogs=showAllBlog()
    		self.render('index.html',cookieName=name,blogs=blogs)
    	def post(self):
    		name=self.get_argument('username')
    		pw=self.get_argument('password')
    		res=check(name,pw)
    		if res: #password正确
    			self.set_cookie('hackerName',name)
    		else: #password错误
    			pass
    		self.redirect('/')

    showAllBlog函数是显示全部用户发表了的文章,定义例如以下:

    def showAllBlog():
    	c.execute('select id,name,title,time from blog')
    	tmp=c.fetchall()
    	return tmp[::-1]

    依照发表时间排序。就是逆序输出。数据库blog表格定义例如以下:

    CREATE TABLE blog(id integer primary key,name text,title text,blog text,time text);
    

        这样每一个人发表的最新文章都会在主页显示,登录成功后主页显演示样例如以下:

    点击username能够进入该用户的主页。


    转载请注明:转自http://blog.csdn.net/littlethunder/article/details/25559095


    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    Tinkoff Challenge
    Uva 12298 超级扑克2
    BZOJ 1031 字符加密
    HDU 4944 逆序数对
    51nod 1215 数组的宽度
    LA 3126 出租车
    LA 3415 保守的老师
    51nod 1275 连续子段的差异
    Uva 11419 我是SAM
    LA 4043 最优匹配
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/4608361.html
Copyright © 2011-2022 走看看