<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 建立數據庫 數據庫是任何現代應用的核心。我們要開發的藏書管理程序也不例外。 雖然當今編程有向著[TDD](http://en.wikipedia.org/wiki/Test-driven_development),[DDD](http://en.wikipedia.org/wiki/Domain-driven_design)導向的趨勢,但是在我們這個程序中,我們還是遵循最傳統的從數據模型出發的流程。 如果我們去瀏覽Symfony 的官方文檔,會發現SF3使用的是從實體(Entity)到數據庫(Database)的流程。但是我們這個教程遵照的是一個完全不同的方向:所有數據的來源都是通過RESTful API提供的。換句話說,所有牽涉到數據庫的操作都在另外一個應用中實現。關于這個RESTful API的實現,請參見我的另外一個教程[《用Silex開發一個RESTful API》](https://www.gitbook.com/book/taylorr/-silex-restful-api/welcome)中的講解。 盡管如此,數據庫還是整個應用的核心——即使在我們這個應用中不直接對其進行操作。 筆者已經將本應用使用到的數據庫的結構SQL語句上傳到了本書對應的Github倉庫,請下載[該文件](https://github.com/taylorren/symfony/blob/master/sql/rsywx.sql),并在你的開發環境中創建該數據庫。 注意:在本文中的寫作中,筆者使用的開發機已經有了一個名為`rsywx`的數據庫——這是我生產環境使用的數據庫的一個本地備份。所以,用于在筆者的開發環境中真正使用的數據庫會是`rsywx_tutorial`。不過這不影響本教程的正常使用。讀者可以使用`rsywx`也可以用自己喜歡的名字來命名這個數據庫。 ## 數據庫結構 `rsywx`數據庫包括了若干表格。從功能來看,有收錄書籍信息(以及書籍出版社、購買地點、Tag)的表格,收錄書籍評論的表格以及書籍訪問記錄的表格,還有一個記錄我最喜歡的NBA球隊湖人隊賽程的表格。 該數據庫結構以及表之間的相互關系如下圖所示: ![](https://box.kancloud.cn/574e0507a98a48ebe9cfcc31157ec7f3_804x705.png) 我不去一一解釋各個字段、各個表之間的關聯,只是簡單地說幾句。 這是一個符合3NF的數據庫。以`book_book`為核心,其他表格(除`lakers`)之外,都直接或間接地和該表有關聯。 `book_visit`用來記錄書籍詳情頁面被訪問的情況。目前我只是簡單地記錄了書籍、訪問時間。這些數據會在后臺管理中用作各類統計。 這肯定不是一個完美的數據庫設計。讀者可以根據自己的需求加以改進和修訂。 ## 數據庫用戶 一般來說,用`root`來操作數據庫總不是一個很好的做法。在開發過程中也許可以出于簡單化的考慮,我們可以先用`root`,但是在生產環境這樣做是不推薦的——除非你對`root`的密碼有充分信心。 我們可以借助相應的工具來創建一個新的用戶,只給他相應的CRUD權限或者其它必要的權限。有關數據庫用戶創建和權限分配的操作,可以參見相應的文檔。 在本文中,我們使用的用戶和密碼是:`tr/trtrtr`。這不是一個很好的用戶/密碼組合,不過只是作為開發和演示而已。 ## 修改數據庫配置 SF應用中數據庫配置保存在`app\config\parameters.yml`中。我們在安裝SF、創建項目時可以制定數據庫的連接,也可以在稍后手工修改。 ~~~ # This file is auto-generated during the composer install parameters: database_host: 127.0.0.1 database_port: null database_name: rsywx_tutorial database_user: tr database_password: trtrtr mailer_transport: smtp mailer_host: 127.0.0.1 mailer_user: null mailer_password: null secret: ThisTokenIsNotSoSecretChangeIt ~~~ 我這里已經將使用到的數據庫、用戶、密碼進行了更新。 這個文件也可以被當成“配置”文件,存放一些供整個應用使用的“全局”變量。我們會在后面的章節看到更詳細的介紹。
                  <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>

                              哎呀哎呀视频在线观看