报错:jinja2.exceptions.UndefinedError: 'page_data' is undefined?

来源:5-5 网易新闻后台管理首页及分页

慕的地7209688

2018-09-01

代码:from flask import Flask, render_template
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:123456@localhost:3306/net_news?charset=utf8'
db = SQLAlchemy(app)


class News(db.Model):
   __tablename__ = 'news'

   id = db.Column(db.Integer,primary_key=True)
   title = db.Column(db.String(200),nullable=False)
   content = db.Column(db.String(2000),nullable=False)
   types = db.Column(db.String(10), nullable=False)
   image = db.Column(db.String(300), )
   author = db.Column(db.String(20), )
   view_count = db.Column(db.Integer)
   created_at = db.Column(db.DATETIME)
   is_valid = db.Column(db.Boolean)

   # def __repr__(self):
   #     return '<News %r>' % self.title


@app.route('/')
def index():
   '''新闻首页'''
   news_list = News.query.filter_by(is_valid=1)
   return render_template('index.html', news_list=news_list)


@app.route('/cat/<name>/')
def cat(name):
   '''新闻的类别'''
   news_list = News.query.filter(News.types == name)
   # 查询类别为name的新闻数据
   return render_template('cat.html', name=name, news_list=news_list)


@app.route('/detail/<int:pk>/')
def detail(pk):
   ''' 新闻详情信息 '''
   new_obj = News.query.get(pk)
   return render_template('detail.html', new_obj=new_obj)


@app.route('/admin/')
def admin():
   ''' 新闻管理首页 '''
   news_list = News.query.all()
   return render_template('admin/index.html', news_list=news_list)

@app.route('/admin/add/')
def add():
   return render_template('admin/add.html')


@app.route('/admin/update/<int:pk>/')
def update(pk):
   ''' 新闻详情信息 '''
   new_obj = News.query.get(pk)
   return render_template('admin/update.html', new_obj=new_obj)


@app.route('/admin/delete/<int:pk>/')
def delete(pk):
   ''' 新闻详情信息 '''
   new_obj = News.query.get(pk)
   return render_template('delete.html', new_obj=new_obj)

if __name__ == '__main__':
   app.run(debug=True)

写回答

1回答

NavCat

2018-09-01

这个报错是那个分页的没有加上去吧,后台新闻列表那里有分页的

0
3
NavCat
回复
慕的地7209688
搞定就好,加油
2018-09-01
共3条回复

Python操作三大主流数据库-MySQL+MongoDB+Redis

一次实战同时掌握Python操作MySQL,MongoDB,Redis 三大数据库使用技巧

2024 学习 · 376 问题

查看课程