
数据准备:
a、SQL脚本录⼊新闻数据$ mysql -h127.0.0.1 -u zl -p mangguodb</home/zhilong/Desktop/sucai/newsdata.sql
b、FastDFS服务器录⼊图⽚数据
1、准备新的图⽚数据压缩包
$ cd ~/Desktop
$ ls
data.zip
2、删除 storage 中旧的data⽬录
$ cd /var/fdfs/storage
$ ls
data logs
$ rm -rf data/
$ ls
logs
3、拷⻉新的图⽚数据压缩包到 storage,并解压
$ sudo cp ~/Desktop/data.zip ./
$ sudo unzip data.zip
4、查看新的data⽬录
首页导航和类别显示功能实现
全局上下文是整站共享的上下文数据 实现步骤:1、在子应用下创建mycontext.py文件
2、编辑mycontext.py文件
3、配置文件中自定义全局上下文
4、模板中直接引用
新闻首页中的导航栏是公用的
from .models import NewsChannel
def get_channels(request):
'''获取导航信息'''
channels=NewsChannel.objects.order_by('id')
return {'channels':channels}
二、配置全局上下⽂
TEMPLATES = [
{
'BACKEND': 'django.template.backends.jinja2.Jinja2', # jinja2模板引擎
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
'newsapp.mycontext.get_channels' ## 指定⾃定义的全局上下⽂类
],
# 补充Jinja2模板引擎环境
'environment': 'mgproject.utils.jinja2_env.environment',
},
},
]
三、编辑base.html
<div class="header-nav-container">
<div class="container">
<div class="header-nav-wapper main-menu-wapper">
<div class="header-nav">
<div class="container-wapper">
<ul class="teamo-clone-mobile-menu teamo-nav main-menu " id="menu-main-menu">
{% for channel in channels %}
<li class="menu-item m-active">
<a style="font-weight: normal;font-size: 16px;" href="{{ channel.url }}" class="teamo-menu-item-title">{{ channel.name }}a>
li>
{% endfor %}
<li class="menu-item">
<a style="font-weight: normal;font-size: 16px;" href="/about/" class="teamo-menu-item-title" >更多a>
li>
ul>
div>
div>
div>
div>
div>
<div class="widget widget-categories">
<h3 class="widgettitle">h3>
<ul class="list-categories">
<li><a href="#">全部a>li>
{% for category in channels[0].newscategory_set.all() %}
<li><a href="#">{{ category.name }}a>li>
{% endfor %}
ul>
div>
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)