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

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ### 類的屬性 * objects:是Manager類型的對象,用于與數據庫進行交互 * 當定義模型類時沒有指定管理器,則Django會為模型類提供一個名為objects的管理器 * 支持明確指定模型類的管理器 ~~~ class BookInfo(models.Model): ... books = models.Manager() ~~~ * 當為模型類指定管理器后,django不再為模型類生成名為objects的默認管理器 > 管理器Manager > * 管理器是Django的模型進行數據庫的查詢操作的接口,Django應用的每個模型都擁有至少一個管理器 * 自定義管理器類主要用于兩種情況 * 情況一:向管理器類中添加額外的方法:見下面“創建對象”中的方式二 * 情況二:修改管理器返回的原始查詢集:重寫get_queryset()方法 ~~~ class BookInfoManager(models.Manager): def get_queryset(self): return super(BookInfoManager, self).get_queryset().filter(isDelete=False) class BookInfo(models.Model): ... books = BookInfoManager() ~~~ * * * * * ### 創建對象 * 當創建對象時,django不會對數據庫進行讀寫操作 * 調用save()方法才與數據庫交互,將對象保存到數據庫中 * 使用關鍵字參數構造模型對象很麻煩,推薦使用下面的兩種之式 * 說明: _init _方法已經在基類models.Model中使用,在自定義模型中無法使用, * 方式一:在模型類中增加一個類方法 ~~~ class BookInfo(models.Model): ... @classmethod def create(cls, title, pub_date): book = cls(btitle=title, bpub_date=pub_date) book.bread=0 book.bcommet=0 book.isDelete = False return book # 引入時間包: from datetime import * # 調用: book=BookInfo.create("hello",datetime(1980,10,11)); # 保存: book.save() ~~~ * 方式二:在自定義管理器中添加一個方法 * 在管理器的方法中,可以通過self.model來得到它所屬的模型類 ~~~ class BookInfoManager(models.Manager): def create_book(self, title, pub_date): book = self.model() book.btitle = title book.bpub_date = pub_date book.bread=0 book.bcommet=0 book.isDelete = False return book class BookInfo(models.Model): ... books = BookInfoManager() # 調用: book=BookInfo.books.create_book("abc",datetime(1980,1,1)) # 保存: book.save() ~~~ 在方式二中,可以調用self.create()創建并保存對象,不需要再手動save() ~~~ class BookInfoManager(models.Manager): def create_book(self, title, pub_date): book = self.create(btitle = title,bpub_date = pub_date,bread=0,bcommet=0,isDelete = False) return book class BookInfo(models.Model): ... books = BookInfoManager() # 調用: book=Book.books.create_book("abc",datetime(1980,1,1)) # 查看: book.pk ~~~ * * * * * ### 實例的屬性 * DoesNotExist:在進行單個查詢時,模型的對象不存在時會引發此異常,結合try/except使用 ### 實例的方法 * str (self):重寫object方法,此方法在將對象轉換成字符串時會被調用 * save():將模型對象保存到數據表中 * delete():將模型對象從數據表中刪除
                  <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>

                              哎呀哎呀视频在线观看