Django 個人博客 - 靜態(tài)文件和模板文件 - step2

1 知識點

  1. 將靜態(tài)文件和模板文件整合到項目
  2. 模板的規(guī)劃與設(shè)計

本次用到的前端HTML素材下載: 前端素材

2 詳細(xì)步驟:

2.1 將模板文件整合到項目中并測試

先將靜態(tài)文件和模板文件放到對應(yīng)的目錄

Paste_Image.png

配置項目設(shè)置文件【settings.py】

INSTALLED_APPS = [
    'blog',  # 將新建的app注冊到項目中
]

TEMPLATES = [
    {
        'DIRS': [
            os.path.join(BASE_DIR, 'templates'),  # 模板文件的路徑設(shè)置
        ],
    },
]

STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'static'),  # 靜態(tài)文件路徑設(shè)置
)

視圖函數(shù)views的設(shè)置【views.py】

def index(request):
    return render(request, 'index.html', locals())

路由urls的設(shè)置【urls.py】
這里順便優(yōu)化下路由的代碼尸变,將blog這個app相關(guān)的urls單獨放在app的【urls.py】中


# django_blog的【urls.py】設(shè)置
from django.conf.urls import url, include
from django.contrib import admin

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'', include('blog.urls'))

]

# blog的【urls.py】設(shè)置
from django.conf.urls import url
from blog.views import index

urlpatterns = [
    url(r'^$', index, name='index'),

]

重新啟動服務(wù)訪問 http://127.0.0.1:8000/ 如果看到一下界面說明靜態(tài)文件和模板文件的路徑設(shè)置正常

沒有加載樣式的頁面

2.2 引入css丐箩、js和img文件

靜態(tài)文件路徑修改【****.html】寸宵,包括link中的href、script中的src厚骗、img中的src

{% load staticfiles %}
<link href="{% static 'css/index.css' %}" rel="stylesheet">
<script type="text/javascript" src="{% static 'js/jquery.min.js' %}"></script>
![]({% static 'images/a1.jpg' %})
加載樣式的頁面

2.3 模板規(guī)劃與設(shè)計

如規(guī)劃設(shè)計圖片顯示的內(nèi)容

  1. 將整個網(wǎng)站分成1和2大部分:第1部分是base模板中相對固定的部分,第2部分是經(jīng)常需要變更的部分兢哭。
  2. 將第1部分再劃分成ABCDEF:都是相對獨立的部分领舰,通過include方法引入
規(guī)劃設(shè)計

2.3.1 將整個網(wǎng)站分成2大部分

# [base.html]
{% load staticfiles %}
<!doctype html>
<html>
<head>
    {% block custom_css %}{% endblock %}
    {% block custom_js %}{% endblock %}
</head>
<body>
<article>
    <div class="l_box f_l">
        {% block left_content %}{% endblock %}
    </div>
</article>
</body>

# [index.html]
{% extends 'base.html' %}
{% load staticfiles %}
{% block left_content %}
    ...(文章部分內(nèi)容)
{% endblock %}

2.3.2 將第1部分再劃分成ABCDEF

# [base.html]
<header>
        {% include 'baseblock/ads.html' %}
</header>
<article>
    <div class="l_box f_l">
        {% block left_content %}{% endblock %}
    </div>
    <div class="r_box f_r">
        {% include 'baseblock/about.html' %}
        {% include 'baseblock/charts.html' %}
        {% include 'baseblock/tags.html' %}
        {% include 'baseblock/sorts.html' %}
        {% include 'baseblock/links.html' %}
    </div>
</article>

將對應(yīng)的代碼放到對應(yīng)的模板文件里面


tags.html

2.4 上下文全局變量

這里會定義一些全部頁面都要加載的變量。例如:

  1. base模板里面的一些標(biāo)題迟螺、鏈接等冲秽,方便全局修改
  2. 分頁類和分頁的數(shù)據(jù)(后面講解)

定義一個全局變量的函數(shù),將函數(shù)中的變量返回【views.py】

from django.conf import settings


# 全局的settings文件的配置
def global_setting(request):
    # settings中站點基本信息的配置
    site_name = settings.SITE_NAME
    site_desc = settings.SITE_DESC
    weibo_sina = settings.WEIBO_SINA
    weibo_tencent = settings.WEIBO_TENCENT
    pro_rss = settings.PRO_RSS
    pro_mail = settings.PRO_EMAIL
    return locals()

將views中定義的函數(shù)加入到上下文到處理器中【settings.py】

TEMPLATES = [
    {
        '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',
                'blog.views.global_setting',  # 將全局變量加入到上下文處理器中
            ],
        },
    },
]

# 網(wǎng)站基本信息配置

SITE_NAME = u'Spareribs的個人博客'
SITE_DESC = u'夢雖虛幻矩父,卻是自己的夢想劳跃;位雖低微,卻是自己的崗位浙垫;屋雖簡陋刨仑,卻是自己的家郑诺;志雖渺小,卻是自己的追求杉武。'
WEIBO_SINA = u'http://weibo.com/'
WEIBO_TENCENT = u'http://weibo.com/'
PRO_RSS = u'http://weibo.com/'
PRO_EMAIL = u'370835062@qq.com'

在前端相當(dāng)于一個變量來使用辙诞,前端會渲染成settings中配置的內(nèi)容【**.html】

# base.html
<header>
    <div class="logo">
        <h1>{{ site_name }}</h1>
        <p>{{ site_desc }}</p>
    </div>
        {% include 'baseblock/ads.html' %}
</header>

# about.html
<div class="tit01">
    <h3>關(guān)注我</h3>
    <div class="gzwm">
        <ul>
            <li><a class="xlwb" href="{{ weibo_sina }}" target="_blank">新浪微博</a></li>
            <li><a class="txwb" href="{{ weibo_tencent }}" target="_blank">騰訊微博</a></li>
            <li><a class="rss" href="{{ pro_rss }}" target="_blank">RSS</a></li>
            <li><a class="wx" href="mailto:{{ pro_mail }}">郵箱</a></li>
        </ul>
    </div>
</div>
完成小demo

相關(guān)下載

前端html
靜態(tài)文件和模板文件_代碼


歡迎留言,博文會持續(xù)更新~~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末轻抱,一起剝皮案震驚了整個濱河市飞涂,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌祈搜,老刑警劉巖较店,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異容燕,居然都是意外死亡梁呈,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進(jìn)店門蘸秘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來官卡,“玉大人,你說我怎么就攤上這事醋虏⊙爸洌” “怎么了?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵颈嚼,是天一觀的道長毛秘。 經(jīng)常有香客問我,道長阻课,這世上最難降的妖魔是什么叫挟? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮柑肴,結(jié)果婚禮上霞揉,老公的妹妹穿的比我還像新娘。我一直安慰自己晰骑,他們只是感情好适秩,可當(dāng)我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著硕舆,像睡著了一般秽荞。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上抚官,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天扬跋,我揣著相機(jī)與錄音,去河邊找鬼凌节。 笑死钦听,一個胖子當(dāng)著我的面吹牛洒试,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播朴上,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼垒棋,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了痪宰?” 一聲冷哼從身側(cè)響起叼架,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎衣撬,沒想到半個月后乖订,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡具练,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年乍构,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片靠粪。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡蜡吧,死狀恐怖毫蚓,靈堂內(nèi)的尸體忽然破棺而出占键,到底是詐尸還是另有隱情,我是刑警寧澤元潘,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布畔乙,位于F島的核電站,受9級特大地震影響翩概,放射性物質(zhì)發(fā)生泄漏牲距。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一钥庇、第九天 我趴在偏房一處隱蔽的房頂上張望牍鞠。 院中可真熱鬧,春花似錦评姨、人聲如沸难述。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽胁后。三九已至,卻和暖如春嗦枢,著一層夾襖步出監(jiān)牢的瞬間攀芯,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工文虏, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留侣诺,地道東北人殖演。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像年鸳,于是被迫代替她去往敵國和親剃氧。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內(nèi)容