多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php框架 > CakePHP > 從Django看CakePHP模板技術的弊端

從Django看CakePHP模板技術的弊端

來源:程序員人生   發布時間:2014-09-08 22:30:40 閱讀次數:4532次
作者:老王

CakePHP的模板技術基本上沿用了Rails的方式,也使用了layout技術(鏈接),子模板的內容會替換layout中的$content_for_layout變量。這樣的方式很簡單,但它也有很多弊端,比如說title的渲染是由layout中的$title_for_layout變量負責的,通常CakePHP程序員是通過在Controller里使用$this->pageTitle的方式來設置title的,但是因為title的內容會涉及很多顯示邏輯(比如為了SEO),所以在Controller里設置title是丑陋的,同樣的情況也會出現在諸如meta等情況里。

下面看看Django里的視圖技術(鏈接):

{% extends "base_generic.html" %}
{% block title %}{{ section.title }}{% endblock %}
{% block content %}
<h1>{{ section.title }}</h1>
{% for story in story_list %}
<h2>
<a href="{{ story.get_absolute_url }}">
    {{ story.headline|upper }}
</a>
</h2>
<p>{{ story.tease|truncatewords:"100" }}</p>
{% endfor %}
{% endblock %}

Django的模板同樣很簡單,即使你不了解Django的語法也能大概猜出上面代碼的意思。這里extends的作用其實就是layout的作用,在父模板里有若干個block,在子模板里也有若干個block,子模板里的block可以覆蓋(也可以不覆蓋)父模板里的block,這樣,就不會再有上面提到的title,meta等壞味道了。

換個角度看,CakePHP的模板技術算是Django的一個簡化版本,如果你想在CakePHP中實現Django的block功能,可以通過自定義helper來實現,但這畢竟不是內核級實現,多少還是有些不爽。
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产视频大全 | 亚洲欧美日韩高清一区二区三区 | jizz在线观看国产精品 | 久久国内视频 | wwwav在线| 午夜dj高清免费观看视频www | 片在线观看免费观看视频 | 一区二区三区在线 | 网站 | 亚洲最大网站在线 | 亚洲成人高清 | 最新国产大片高清视频 | 亚洲欧美亚洲 | 亚洲乱码一区二区三区在线观看 | 精品第一页 | 色网站在线 | 亚洲一本视频 | 有色视频在线观看免费高清 | 法国18sexxxx性xxx | 日本午夜在线观看 | 免费亚洲网站 | 日韩性生活视频 | 在线视频精品视频 | 亚洲最新永久观看在线 | 青青青青爽极品在线视频 | 成人亚洲网站 | 国产亚洲精品国产福利在线观看 | 波多野结衣中出在线 | 无毒不卡| 黄色特级片黄色特级片 | 国产精品亚洲午夜一区二区三区 | 久久精品免费一区二区三区 | 久久久久久国产精品免费免 | 成人国产一区二区 | 亚洲日韩欧美一区二区在线 | 欧美性福利 | 久久久久久久岛国免费播放 | 亚洲制服一区 | 尤物yw午夜国产精品视频 | jizzjizz丝袜老师 | 午夜欧美在线 | 亚洲成年人在线 |