帝國cms模型之間的字段關(guān)聯(lián)詳細(xì)教程

字號(hào):


    模型之間的字段關(guān)聯(lián)主要應(yīng)用在同一個(gè)系統(tǒng)使用多個(gè)模型實(shí)現(xiàn)的情況下使用,用于實(shí)現(xiàn)多個(gè)模型之間的數(shù)據(jù)關(guān)聯(lián)。如學(xué) 校中的學(xué)生管理系統(tǒng):一般要由學(xué)生檔案模型、班級(jí)模型、學(xué)生成績模型等組成,那如何將這些模型用學(xué)生姓名或編號(hào)關(guān)聯(lián)在一起呢?這個(gè)就是我們今天要講的帝國 網(wǎng)站管理系統(tǒng)4.7新增的模型之間的字段關(guān)聯(lián)功能,我們通過例子來了解下此功能的使用。
    例子概要:
    實(shí)現(xiàn)FLASH作品模型與FLASH作者模型的作者字段相關(guān)聯(lián)。
    操作步驟:
    一、首頁我們先建了個(gè)FLASH作者模型
    (因本節(jié)主要是講字段關(guān)聯(lián),有關(guān)模型增加就不多講解,具體可以到教程區(qū)看下模型教程:http://bbs.phome.net/showthread-35-29387-0.html)
    建立后的“FLASH作者”數(shù)據(jù)表
    建立后的“FLASH作者”模型
    “FLASH作者”作者字段名為title
    二、增加FLASH作者模型后,我們現(xiàn)在給FLASH作品模型的作者加上字段關(guān)聯(lián):
    使FLASH作品模型與FLASH作者模型兩邊的作者相關(guān)聯(lián)。
    1、到“系統(tǒng)設(shè)置”->“數(shù)據(jù)表管理”->點(diǎn)擊FLASH數(shù)據(jù)表的“管理字段”。
    2、進(jìn)入FLASH數(shù)據(jù)表的字段管理,點(diǎn)擊修改“flashwriter”作者字段。
    3、然后進(jìn)入修改“flashwriter”作者字段,并進(jìn)行字段關(guān)聯(lián)設(shè)置。
    說明:
    (1)因我們建的“FLASH作者”數(shù)據(jù)表為“flashwriter”、作者字段名為“title”,所以關(guān)聯(lián)字段設(shè)為:“flashwriter.title”
    (2)數(shù)據(jù)同步:是指如果選擇為數(shù)據(jù)同步,那么只要FLASH作者模型的作者更改了,F(xiàn)LASH作品模型的作者也會(huì)跟著更改;不設(shè)置數(shù)據(jù)同步則不同時(shí)更改。
    三、查看加上關(guān)聯(lián)字段后的效果。
    說明:增加關(guān)聯(lián)字段后,在增加“FLASH作品”時(shí)就可以選擇“FLASH作者”模型所有增加的作者。如下圖:
    加上字段關(guān)聯(lián)后的FLASH作者錄入元素
    點(diǎn)擊選擇按鈕后彈出的選擇“FLASH作者模型”數(shù)據(jù)的窗口
    FLASH作者模型錄入的數(shù)據(jù)
    四、“數(shù)據(jù)同步”選項(xiàng)的說明:
    “數(shù)據(jù)同步”:是指如果選擇為數(shù)據(jù)同步,那么只要FLASH作者模型的作者更改了,F(xiàn)LASH作品模型的作者也會(huì)跟著更改;不設(shè)置數(shù)據(jù)同步則不同時(shí)更改。
    現(xiàn)在我們實(shí)驗(yàn)下,我們把FLASH作品中的作者選擇為“李四”,然后提交。
    接著我們到FLASH作者管理,把“李四”的名字改為“帝國”,然后提交。
    這時(shí)我們返回FLASH作品管理看作品模型里的作者“李四”也更改為“帝國”。
    當(dāng)然如果字段關(guān)聯(lián)不選擇“數(shù)據(jù)同步”的話則修改FLASH作者模型數(shù)據(jù)后FLASH作品的作者就不會(huì)同時(shí)更新。
    五、模型間字段關(guān)聯(lián)的一些小技巧
    上面我們給FLASH作品模型的作者加上字段關(guān)聯(lián)后的“輸入表單替換html代碼”為如下:
    <input name="flashwriter" type="text" id="flashwriter" value="<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[flashwriter]))?>" size="45">
    <input type="button" name="changebutton" value="選擇" onclick="window.open('db/ChangeField.php?viewf=title&changef=title&tbname=flashwriter&form=add&field=flashwriter','','width=700,height=550,scrollbars=yes');">
    上面紅色的參數(shù)說明:
    viewf為選擇頁面顯示內(nèi)容的字段
    changef為選擇內(nèi)容的字段
    changeline為選擇頁面每行顯示幾條記錄,不加此參數(shù)默認(rèn)為一行顯示2條
    六、至此,模型之間字段關(guān)聯(lián)講解完畢。