请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

django+xadmin 在线教育课程常见问题归纳(持续更新中)

本问答主要是集中整理在线教育课程的主要常见问题

xadmin

由于xadmin的最新源码和pypi上xadmin的安装源由于不一致造成了有些学员在源码安装xadmin后会出现一些问题

  1. 源码安装xadmin后不能运行,报错 app not load

    原因: 课程录制的时候xadmin源码的依赖包和pypi上安装源的依赖包是一致的, 但是后来不一致了

    解决方法:

        1. https://github.com/sshwsfc/xadmin/blob/master/requirements.txt

        对照源码中的依赖包一一安装依赖包

         2. 直接运行:

            pip install future==0.15.2 httplib2==0.9.2 six==1.10.0 django-import-export>=0.5.1

    2. 不能选择xadmin的主题

            原因: 主题下载网站的http策略变化了, 导致xadmin源码中下载主题的代码出现bug, 目前为止官方没有修复这个bug

            解决方案: https://my.oschina.net/u/2396236/blog/1083251 可以参考这篇文章, 后期如果官方一直不修复这个问题, 我会修改源码然后给大家放到群文件里面


如果还有其他的常见问题没有考虑到, 希望当家帮忙在回复里面指出一下, 谢谢

14099
收起

正在回答 回答被采纳积分+3

33回答

KIWI2018 2018-02-14 20:28:14

老师,我有问题:

老师,我也有NoReverseMatch的这个问题。 具体如下: 这是我在courses.urls.html下的配置 

urlpatterns = [ url(r'^list/$', CourseListView.as_view(), name="course_list"), 

url(r'^detail/(?P<course_id>\d+)/$', CourseDetailView.as_view(), name="course_detail"),] 

在mx_online.urls.py的配置如下:

 urlpatterns = [ url(r'^org/', include('organization.urls',namespace="org")),

 url(r'^course/', include('courses.urls', namespace="course")),

 url(r'^media/(?P<path>.*)$',serve,{"document_root":MEDIA_ROOT}),]

 在访问127.0.0.1:8000/course/detail时控制台报错: 

[14/Feb/2018 09:12:50] "GET /course/detail/ HTTP/1.1" 404 3615 Not Found: /course/detail/ 在访问course/list时报错: NoReverseMatch: Reverse for 'course_detail' with arguments '('',)' and keyword arguments '{}' not found. 1 pattern(s) tried: [u'course/detail/(?P<course_id>\\d+)/$'] 

请问老师这是什么问题?

感觉因为这个url配置出问题所以我许多页面都不能正常访问了,像首页,course/list等都不能正常访问

以下是我在网页看到的错误:

NoReverseMatch at /course/list/

Reverse for 'course_detail' with arguments '('',)' and keyword arguments '{}' not found. 1 pattern(s) tried: [u'course/detail/(?P<course_id>\\d+)/$']


0 回复 有任何疑惑可以回复我~
  • 提问者 bobby #1
    NoReverseMatch 这个错误是因为你的template中配置的url模式无法匹配到你的urls中的配置,是不是你少传递了一个参数?或者参数传递的不是int类型?
    回复 有任何疑惑可以回复我~ 2018-02-19 19:25:50
慕码人5926626 2018-02-13 16:01:05

老师好,请问在这个网站基础框架上,能否加入类似社区的发表、评论 这一项功能呢。  如下图呢,希望老是可以指点一二。  https://img1.sycdn.imooc.com//szimg/5a829b39000158b708640591.jpg

0 回复 有任何疑惑可以回复我~
  • 提问者 bobby #1
    这个从功能是上来讲可定是可以的,但是需要设计人员设计页面等, 这些前期是需要设计人员参与的
    回复 有任何疑惑可以回复我~ 2018-02-19 19:35:01
慕码人5926626 2018-02-08 14:01:03

老师 添加了课程机构,可是在机构里面添加老师时候,不显示机构呢  这是为啥呢  谢谢老师

https://img1.sycdn.imooc.com//szimg/5a7be79c0001118807960334.jpg

0 回复 有任何疑惑可以回复我~
  • 提问者 bobby #1
    你这个地方是不是设置为了搜索模式,你搜索试试
    回复 有任何疑惑可以回复我~ 2018-02-08 18:10:35
  • 慕码人5926626 回复 提问者 bobby #2
    嗯呐 谢谢老师呢
    回复 有任何疑惑可以回复我~ 2018-02-08 19:49:01
  • 慕码人5926626 回复 提问者 bobby #3
    回复 __bobby老师呀 我用xadmin,第五章呢。 访问http://127.0.0.1:8000/xadmin 等一系列没问题,可是到了http://127.0.0.1:8000/ 访问出错呢。
    
    然后我在第六章第一节的学习,http://127.0.0.1:8000/访问出现以下错误呢
    
    TemplateDoesNotExist at /
    base.html
    Request Method:	GET
    Request URL:	http://127.0.0.1:8000/
    Django Version:	1.11
    Exception Type:	TemplateDoesNotExist
    Exception Value:	
    base.html
    
    
    修改这个之后又出现这个错误呢
    NoReverseMatch at /
    'course' is not a registered namespace
    Request Method:	GET
    Request URL:	http://127.0.0.1:8000/
    Django Version:	1.11
    Exception Type:	NoReverseMatch
    Exception Value:	
    'course' is not a registered namespace
    
    
    希望老师抽空看看呢 谢谢您
    回复 有任何疑惑可以回复我~ 2018-02-08 19:54:10
慕码人5926626 2018-02-06 20:57:12

老师  我的虚拟环境pip包都安装了呢(xadmin源码安装)。可是pycharm却不显示呢(pycharm里面的还是我手动一个个添加的,很疑惑,为啥不同步呢)  如下图:谢谢老师

https://img1.sycdn.imooc.com//szimg/5a79a61e00014f2207030716.jpg

https://img1.sycdn.imooc.com//szimg/5a79a61e0001bfb311960589.jpg


0 回复 有任何疑惑可以回复我~
qq_路在脚下_16 2018-02-05 20:34:45

还有从老师的github上下载的xadmin里面py2里面用的是django.core.urlresolvers

到了py3就变成了from django.urls import reverse

0 回复 有任何疑惑可以回复我~
  • 提问者 bobby #1
    这个是django2.0的修改 尽量使用django1.11
    回复 有任何疑惑可以回复我~ 2018-02-06 16:59:18
李嘉图principal 2018-01-10 16:29:42

在mkonline_resource 中下载了xadmin 和DjangoUeditor 放在exapp中 运行 migrations 又报:

File "C:\Users\Administrator\Envs\test4\lib\importlib\__init__.py", line 126, in import_module

    return _bootstrap._gcd_import(name[level:], package, level)

  File "<frozen importlib._bootstrap>", line 994, in _gcd_import

  File "<frozen importlib._bootstrap>", line 971, in _find_and_load

  File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked

ModuleNotFoundError: No module named 'xadmin'

这个错  怎么破

0 回复 有任何疑惑可以回复我~
  • 呵呵
    mark resource以后 命令行还是不认只有添加搜索路径:
    sys.path.insert(0,os.path.join(BASE_DIR,'extrapps'))
    回复 有任何疑惑可以回复我~ 2018-01-10 16:41:16
提问者 bobby 2018-01-09 13:30:18

有些同学在mac、linux和windows下出现安装mysql-python或者mysqlclient出问题的情况, 大家可以通过pymysql作为django的驱动, 这个安装不容易出错 具体方法可以参考这个 https://stackoverflow.com/questions/34777755/how-to-config-django-using-pymysql-as-driver

0 回复 有任何疑惑可以回复我~
  • 我在manage.py里面加入了import pymysql , 也添加了pymysql.install_as_MySQLdb() 这句话,但是运行Run manage.py Task的时候,仍然报错,提示没有数据库。
    回复 有任何疑惑可以回复我~ 2018-08-20 14:05:34
  • 加到工程目录的__init__文件里, 不是manage文件
    回复 有任何疑惑可以回复我~ 2018-09-20 17:23:24
從容 2018-01-03 21:05:14

3-4 views.py 

from .models import UserMessage

def getform(request):
   all_messages = UserMessage.objects.all()
   (断点) for message in all_messages:
       print message.name
   return render(request, 'messageform.html')

     断点调试djangotest AppRegistryNotReady: Apps aren't loaded yet.

按照github上xadmin依赖安装如下(python2只找到这个解决办法= =):

https://img1.sycdn.imooc.com//szimg/5a4cd4d100015eed03510422.jpg

请问老师我现在该怎么做?



0 回复 有任何疑惑可以回复我~
  • 提问者 bobby #1
    你通过qq群找到我 给我发个qq消息
    回复 有任何疑惑可以回复我~ 2018-01-08 09:38:45
  • 皮的翻皮水 回复 提问者 bobby #2
    老师你在哪个QQ群啊
    回复 有任何疑惑可以回复我~ 2018-03-03 20:35:56
  • 素珍呐你就是个长虫 回复 提问者 bobby #3
    老师,您在哪个群 ?为什么我加的那个没有人回复消息 ?问问题也没反应?
    回复 有任何疑惑可以回复我~ 2018-03-12 14:31:34
搬铁少年Ai 2017-12-26 00:41:43

主题加载之后,除了default 和 bootstarp,其他的主题布局都会乱掉,老师有遇到这个问题吗?

0 回复 有任何疑惑可以回复我~
网络侦探 2017-12-23 22:50:14

老师,有个简单问题,如果不需要界面和太多功能,是不是直接就用django-admin来做后台开发也没什么问题呢?

0 回复 有任何疑惑可以回复我~
  • 提问者 bobby #1
    django-admin主要是用来管理表的增、删、改、查、过滤以及具有外键之间表的一些关系,如果要有些复杂的逻辑的话需要自己定制一下django-admin, 其他情况一般django-admin就能满足
    回复 有任何疑惑可以回复我~ 2017-12-25 10:06:54
XO鸡丝 2017-12-21 18:36:35

可以提供一下  register.html 以及 apps/users.py/views.py 的源码吗。


0 回复 有任何疑惑可以回复我~
  • 提问者 bobby #1
    这个地方不能上传代码 你可以在qq群里下载到源码
    回复 有任何疑惑可以回复我~ 2017-12-22 16:34:06
  • 林庭_snowfox_1992 回复 提问者 bobby #2
    老师,群是哪个,我也想加进去请教些问题
    回复 有任何疑惑可以回复我~ 2018-07-15 10:31:12
慕尼黑1295245 2017-12-12 15:47:38

都安装了还是报这个错,

File "C:\Python27\lib\site-packages\django\apps\registry.py", line 124, in check_apps_ready

    raise AppRegistryNotReady("Apps aren't loaded yet.")

django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.


0 回复 有任何疑惑可以回复我~
  • 提问者 bobby #1
    应该是某些依赖包没有装好 https://github.com/sshwsfc/xadmin/blob/master/requirements.txt 你检查一下这些xadmin的依赖包有没有安装好
    回复 有任何疑惑可以回复我~ 2017-12-12 15:59:56
qq_快乐你懂得_0 2017-10-22 17:10:08

bobby老师,在xadmin不能选择主题这个问题,按照以上博客的方法修改了还是没有起作用;不知道什么原因:


1、下载

https://img1.sycdn.imooc.com/szimg/59ec605300013c7515260512.jpg


pip install requests

2、导入

import requests

3、修改

# Block Views
def block_top_navmenu(self, context, nodes):

   themes = [
       {'name': _(u"Default"), 'description': _(u"Default bootstrap theme"), 'css': self.default_theme},
       {'name': _(u"Bootstrap2"), 'description': _(u"Bootstrap 2.x theme"), 'css': self.bootstrap2_theme},
       ]
   select_css = context.get('site_theme', self.default_theme)

   if self.user_themes:
       themes.extend(self.user_themes)

   if self.use_bootswatch:
       ex_themes = cache.get(THEME_CACHE_KEY)
       if ex_themes:
           themes.extend(json.loads(ex_themes))
       else:
           ex_themes = []
           try:
               flag=False
               if flag:
                   h = httplib2.Http()
                   resp, content = h.request("https://bootswatch.com/api/3.json", 'GET', '',
                       headers={"Accept": "application/json", "User-Agent": self.request.META['HTTP_USER_AGENT']})
                   if six.PY3:
                       content = content.decode()
                       watch_themes = json.loads(content)['themes']
               else:
                   content = requests.get("https://bootswatch.com/api/3.json")
                   if six.PY3:
                        content = content.decode()
                        watch_themes = json.loads(content)['themes']

               ex_themes.extend([
                   {'name': t['name'], 'description': t['description'],
                       'css': t['cssMin'], 'thumbnail': t['thumbnail']}
                   for t in watch_themes])
           except Exception as e:
               print(e)

           cache.set(THEME_CACHE_KEY, json.dumps(ex_themes), 24 * 3600)
           themes.extend(ex_themes)

   nodes.append(loader.render_to_string('xadmin/blocks/comm.top.theme.html', {'themes': themes, 'select_css': select_css}))

0 回复 有任何疑惑可以回复我~
  • 提问者 bobby #1
    谢谢, 这个问题是由于主题下载网站服务器的请求模式改变了造成了urllib去请求下载会报错
    回复 有任何疑惑可以回复我~ 2017-10-23 11:00:27
  • 如果用requests库的话:
    content = requests.get(
    "https://bootswatch.com/api/3.json",
    headers={"Accept": "application/json",
    "User-Agent": self.request.META['HTTP_USER_AGENT']}
    )
    if six.PY3:
        content = content.decode()
    watch_themes = json.loads(content.text)['themes']
    
    详细文档可以参考:http://docs.python-requests.org/en/master/user/quickstart/#response-content
    回复 有任何疑惑可以回复我~ 2017-12-30 23:40:52
首页上一页12下一页尾页
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信