采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
本问答主要是集中整理在线教育课程的主要常见问题
xadmin
由于xadmin的最新源码和pypi上xadmin的安装源由于不一致造成了有些学员在源码安装xadmin后会出现一些问题
源码安装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 可以参考这篇文章, 后期如果官方一直不修复这个问题, 我会修改源码然后给大家放到群文件里面
如果还有其他的常见问题没有考虑到, 希望当家帮忙在回复里面指出一下, 谢谢
老师,我有问题:
老师,我也有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+)/$']
回复 __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 希望老师抽空看看呢 谢谢您
在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'
这个错 怎么破
呵呵 mark resource以后 命令行还是不认只有添加搜索路径: sys.path.insert(0,os.path.join(BASE_DIR,'extrapps'))
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只找到这个解决办法= =):
请问老师我现在该怎么做?
bobby老师,在xadmin不能选择主题这个问题,按照以上博客的方法修改了还是没有起作用;不知道什么原因:
1、下载
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}))
如果用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
登录后可查看更多问答,登录/注册