django2.0的安裝(原始碼安裝方式):
(3)因為我們用原始碼的xadmin,所以要解除安裝之前安裝的
pip uninstall xadmin(4)配置路由
把admin改成xadmin
# urls.pyfrom django.urls import path
import xadmin
urlpatterns = [
path('xadmin/', xadmin.site.urls),
]
'xadmin',(6)重新生成資料庫'crispy_forms'
python manage.py makemigrations(7)設定成中文python manage.py migrate
language_code = 'zh-hans'(8)建立乙個管理員使用者time_zone = 'asia/shanghai'
use_i18n = true
use_l10n = true
use_tz = false
python manage.py createsuperuser現在就可以執行了
python manage.py runserver訪問後台:
可以看到成功進入
datetimefield報錯問題解決:
當我們點增加使用者資訊,會報錯
可以看到報的是xadmin/widgets中第80行
def render(self, name, value, attrs=none):上面貼出來的最後一行**就是widgets.py的第80行**。input_html = [ht for ht in super(adminsplitdatetime, self).render(name, value, attrs).split('\n') if ht != '']
# return input_html
return mark_safe('
%s' '%s
' ''
'%s%s
' % (input_html[0], _(u'today'), input_html[1], _(u'now')))
可以看出這句**是希望用「\n」把input_html裡的兩個標籤拆開,但兩個標籤之間沒有換行,所以沒能拆分,導致報錯。
input_html[1]就是報錯的**,因為input_html裡只有乙個元素。
解決辦法:
既然「\n」不能拆分標籤,那麼就換一種拆分方式,使用「/>
原**:
input_html = [ht for ht in super(adminsplitdatetime, self).render(name, value, attrs).split('\n') if ht != '']修改後**:
input_html = [ht for ht in super(adminsplitdatetime, self).render(name, value, attrs).split('/>input_html[0] = input_html[0] + "/>"
input_html[1] = "
再執行就正常了
xadmin後台管理
pip install xamin主體模組 xadmin 渲染 模組 crispy forms 為模型通過版本控制,可以回滾資料 reversion python manage.py migrate xadmin的依賴 import xadmin xadmin.autodiscover xversi...
Django配置xadmin後台管理
xadmin是基於django的admin開發的更完善的後台管理系統,基於bootstrap開發,擁有更自由化的頁面管理。在專案的urls.py中配置xadmin的路由 然後依次執行makemigrations,migrate建立資料庫 啟動專案,訪問 更改settings配置,可顯示中文 lang...
Django後台xadmin配置
pip install git git import xadmin from django.urls import path xadmin.autodiscover model自動註冊 from xadmin.plugins import xversion xversion.register mod...