<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Natural

     

    Django官方文檔學習筆記:Tutorial: Part 2

        本章主要是介紹如何利用django的admin site功能,根據定義的models,自動生成可以CRUD的表單頁面。
        一、自動生成admin界面
        1、激活admin site功能   
        修改"mysite/settings.py"文件,在INSTALLED_APPS屬性去掉'django.contrib.admin'注釋。
        修改"mysite/urls.py"文件,去掉如下三行的注釋:
    from django.contrib import admin
    admin.autodiscover()

    url(r
    '^admin/', include(admin.site.urls)),
        執行“python manage.py syncdb”命令將該模塊映射到數據庫即可。

        2、啟動開發服務器   
        運行“python manage.py runserver”啟動server(默認8000端口,端口有沖突重新制定,上篇提到過的)。
        啟動成功后,即可以瀏覽器打開“http://127.0.0.1:8000/admin”,用之前創建的super user賬戶登錄了。
        默認還看不到polls,需要把它注冊到admin中。
        在“mysite/polls”目錄下創建admin.py文件,內容如下:
    from django.contrib import admin
    from polls.models import Poll

    admin.site.register(Poll)
        重啟服務器登錄,就可以看到根據Poll模板自動生成的CRUD表單了。

        3、自定義admin表單
        多個屬性時,如何控制各屬性顯示時的先后關系?
        通過修改admin.py,來定義表單顯示的格式.

    from django.contrib import admin
    from polls.models import Poll, Choice

    class ChoiceInline(admin.TabularInline): #    admin.StackedInline
        model = Choice
        extra 
    = 3
        
    class PollAdmin(admin.ModelAdmin):
    #    fields = ['pub_date', 'question']

        fieldsets 
    = [
                (None,                          {
    'fields': ['question']}),
                (
    'Date information',    {'fields': ['pub_date'],    'classes': ['collapse']}),
        ]
        inlines 
    = [ChoiceInline]
        list_display 
    = ('question''pub_date''was_published_recently')
        list_filter 
    = ['pub_date']
        search_fields 
    = ['question']
        date_hierarchy 
    = 'pub_date'

    admin.site.register(Poll, PollAdmin)
    admin.site.register(Choice)
        屬性比較少時,直接通過"fields = ['pub_date', 'question']"確定先后順序即可.
        而屬性比較多時,則可通過設置fieldsets來制定顯示效果.
        效果如下圖:

        Poll表單:
        'Date information'            新表單標題;
        'collapse'                         django自帶的隱藏樣式;
        “inlines = [ChoiceInline]”   將Choice表單顯示在Poll中;
        admin.StackedInline         Choice屬性垂直顯示;
        admin.TabularInline          Choice屬性水平顯示;
       
        Poll list記錄:
        修改"mysite/polls/models.py"文件,設置相關屬性的顯示樣式。
    class Poll(models.Model):
        question 
    = models.CharField(max_length=200)
        pub_date 
    = models.DateTimeField('date published')
        
        
    def __unicode__(self):
            
    return self.question
        
    def was_published_recently(self):
            
    return self.pub_date >= timezone.now() - datetime.timedelta(days=1)
        was_published_recently.admin_order_field 
    = 'pub_date'
        was_published_recently.boolean 
    = True
        was_published_recently.short_description 
    = 'Published recently?'

        list_display = ('question''pub_date''was_published_recently')  指定poll list記錄頁面顯示那些字段
        list_filter 
    = ['pub_date']    右側的過濾器;django自帶日期選項
        search_fields 
    = ['question']    上端搜索框;制定搜索的屬性范圍,like匹配
        date_hierarchy 
    = 'pub_date'   日期分層導航;根據記錄日期年月日自動分類

        二、自定義admin外觀
        創建“mysite/templates”目錄,修改"mysite/settings.py"文件,在TEMPLATE_DIRS屬性中配置該目錄位置。
        進入django安裝目錄(...\Python27\Lib\site-packages\django\contrib\admin\templates),把你需要修改的文件,拷貝到項目“mysite/templates”目錄下,修改成你需要的效果,服務器啟動時會自動從此處加載。
       

    posted on 2013-05-10 15:35 此號已被刪 閱讀(948) 評論(0)  編輯  收藏 所屬分類: Python

    導航

    統計

    常用鏈接

    留言簿(8)

    隨筆分類(83)

    隨筆檔案(78)

    文章檔案(2)

    相冊

    收藏夾(7)

    最新隨筆

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 免费观看AV片在线播放| 亚洲av无码片在线播放| 4虎永免费最新永久免费地址| 黄网站色成年片大免费高清 | 亚洲成a人无码亚洲成av无码| 亚洲成AV人在线观看天堂无码| 亚洲M码 欧洲S码SSS222| 最新猫咪www免费人成| 37pao成人国产永久免费视频| 香蕉免费一级视频在线观看| 无码一区二区三区亚洲人妻| 丁香婷婷亚洲六月综合色| 亚洲视频在线一区| 亚洲αv在线精品糸列| 久久久久亚洲爆乳少妇无| 亚洲国产小视频精品久久久三级 | 亚洲欧洲国产精品久久| 久久亚洲精品中文字幕无码| 亚洲人成精品久久久久| 亚洲一级黄色视频| www.亚洲精品| 亚洲VA综合VA国产产VA中| 亚洲国产精品成人| 亚洲成a人片在线观看老师| 亚洲国产专区一区| 亚洲国产人成中文幕一级二级| 免费国产小视频在线观看| 国产猛烈高潮尖叫视频免费| 日本一线a视频免费观看| 香蕉视频在线观看免费国产婷婷| www.黄色免费网站| 中文字幕无码视频手机免费看| 日韩在线免费视频| 免费观看a级毛片| 国产成人免费a在线视频色戒| 国产成人免费ā片在线观看| 亚洲成av人片天堂网老年人| 久久亚洲欧洲国产综合| 亚洲日韩中文字幕在线播放| 亚洲av无码乱码国产精品fc2| 亚洲视频中文字幕|