ThinkPHP5相關(guān)知識(shí)點(diǎn)記錄

1.分頁(yè)操作paginate()

方法使用:參數(shù)是每頁(yè)顯示幾條數(shù)據(jù)

后臺(tái)代碼:


前臺(tái)代碼:用后臺(tái)傳過(guò)來(lái)的變量,調(diào)用render()方法

實(shí)際效果:

2.多表關(guān)聯(lián)with(),belongsTo()多對(duì)一

comment表:評(píng)論表
article表:文章表
前臺(tái)評(píng)論表顯示
image.png

comment(評(píng)論表)中,有個(gè)article_id代表此評(píng)論屬于哪篇文章
前臺(tái)顯示需要獲取到article(文章表)title
comment(評(píng)論表)模型里多對(duì)一使用belongsTo()


comment(評(píng)論表)控制器里:使用with('article')關(guān)聯(lián)文章表

這里就使用到關(guān)聯(lián)的article表里的title字段

這是另一個(gè)一對(duì)多方法使用:hasMany()

3.表聯(lián)合刪除

以上面的為例,如果刪除文章表,那對(duì)應(yīng)的評(píng)論也應(yīng)該被刪除,這時(shí)候就需要文章表關(guān)聯(lián)一下評(píng)論表

article(文章表)模型里,定義一個(gè)一對(duì)多的方法


article(文章表)控制器里關(guān)聯(lián)comment表,且一起刪除together()

4.驗(yàn)證器使用,整體的數(shù)據(jù)傳遞過(guò)程

驗(yàn)證思路:數(shù)據(jù)提交后傳遞的路線:html -> controller -> model -> validate

html:提交數(shù)據(jù)
controller:整理數(shù)據(jù)
model:處理數(shù)據(jù)
validate:驗(yàn)證數(shù)據(jù)
表單:


提交:ajax方法

把數(shù)據(jù)整理好,傳給adminmodel的register()方法

admin模型先將數(shù)據(jù)給驗(yàn)證器的register場(chǎng)景驗(yàn)證

驗(yàn)證器里先定義規(guī)則,再寫(xiě)驗(yàn)證場(chǎng)景,不同場(chǎng)景,驗(yàn)證不同數(shù)據(jù)

5.驗(yàn)證碼的captcha

表單里,寫(xiě)個(gè)input:提交驗(yàn)證碼值和img:顯示驗(yàn)證碼


控制器的createVerify()方法里傳入驗(yàn)證碼的配置,返回一個(gè)能在前端顯示的圖

前端js里面寫(xiě)一個(gè)驗(yàn)證碼刷新方法,參數(shù)是為了防止頁(yè)面緩存,導(dǎo)致沒(méi)法刷新新的圖

6.三元運(yùn)算符在模板里的使用

注意:模板里的代碼,得用''括起來(lái)

 <td>{$vo.status == 1 ? '正常': '<span style="color: red">禁用</span>'}</td>
 {if $vo.is_super == 1}<td style="color: red">超級(jí)管理員</td>{else/}<td>普通管理員</td>{/if}

7.關(guān)聯(lián)表

注意:


image.png

7.關(guān)聯(lián)表with()設(shè)置屬性

方式1:閉包:對(duì)關(guān)聯(lián)預(yù)加載的表里的屬性進(jìn)行設(shè)置,
with(['comment'=>function($query){$query->order('create_time','desc');}])

方式2:關(guān)聯(lián)2個(gè)1級(jí),1個(gè)2級(jí), 再根據(jù)2級(jí)里的字段,進(jìn)行排序
一級(jí):img,property
二級(jí):imgUrl(img.imgUrl)

image.png

8.事務(wù)

注意:為了數(shù)據(jù)庫(kù)操作的安全嚴(yán)謹(jǐn)性
開(kāi)啟事務(wù)Db::startTrans();
數(shù)據(jù)操作........
提交事務(wù)Db::commit();
數(shù)據(jù)回滾Db::rollback();

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容