<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                MVC的三要素 **Model**是指數據模型,是對客觀事物的抽象。 **View**是指視圖,也就是呈現給用戶的一個界面,是model的具體表現形式,也是收集用戶輸入的地方。 **Contorller**指的是控制器,主要負責與model和view打交道。 關于View的幾個原則: 1.負責顯示界面,**以HTML為主**; 2.一般**沒有復雜的判斷語句或運算過程**,可以有簡單的循環語句、格式化語句。 比如,一般博客首頁的文章列表,就是一種循環結構; 3.**從不調用Model的寫方法**。也就是說,View只從Model獲取數據,而不直接改寫Model,所以我們說他們老死不相往來。 4.一般**沒有任何準備數據的代碼**,如查詢數據庫、組合成一定格式的字符串等。 這些一般放在Controller里面,并以變量的形式傳給視圖。 也就是說,視圖里面要用到的數據,都是拿來就能直接用的變量。 關于Model的幾個原則: 1.數據、行為、方法是Model的主要內容; 2.實際工作中**,Model是MVC中代碼量最大**,邏輯最復雜的地方,因為關于應用的大量的業務邏輯也要在這里面表示。 3.**Model所提供的數據都是原始數據**。也就是說,不帶有任何表現層的代碼。 比如,一般不會在輸出的數據中添加HTML標簽,這是View的工作。 但是Model可以提供有結構的數據,數組結構、隊列結構、乃至其他Model等。 這個結構并非是表現層的格式,而是數據在內存中的表現。 4.**與輸出不同,Model的輸入數據,可以是帶有表現格式的數據。** 如將一篇文章保存到Post里面,內容中必然包含各種HTML標簽。 因此,Model一般要對輸入數據作過濾、驗證和規范化等預處理。 特別是對于需要保存進數據庫的,一定要對所有的輸入數據作預處理。 這些預處理,有的其實是業務邏輯。比如只有主編才可以刪除文章,這一驗證規則既也是業務邏輯,也是權限控制。 而有些預處理,則不屬于業務邏輯,比如,文章標題前后的空格應去除。 5.注意與Controller區分開。Model是處理業務方面的邏輯,Controller只是簡單的協調Model和View之間的關系, 只要是與業務有關的,就該放在Model里面。**好的設計,應當是胖Model,瘦Controller。** 關于Controller的設計原則: 1.**用于處理用戶請求**。 因此,對于reqeust的訪問代碼應該放在Controller里面,比如 $_GET $_POST 等。 但僅限于獲取用戶請求數據,不應該對數據有任何操作或預處理,這些工作應該交由Models來完成。 2.**調用Models的讀方法**,獲取數據,直接傳遞給視圖,供顯示。 當涉及到多個Model時,有關的邏輯應當交給Model來完成。 3.**調用Models**的類方法,對Models進行寫操作。 4.**調用視圖渲染函數等**,形成對用戶Reqeust的Response。 **Model設計參考** 1.Model應當集中整個應用的數據和業務邏輯 2.基礎Model應當盡可能細化 3.分層次設計Model 4.仔細為Model方法命名 5.MVC與前后端的配合
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看