Django OSQA&x2B;PyBBM

Django OSQA&x2B;PyBBM,django,package,admin,django-urls,osqa,Django,Package,Admin,Django Urls,Osqa,我的问题是: 我已经在OSQA中集成了PyBBM,包的管理部分中的所有链接都“断开” 例如,当我单击“添加”时,来自 http://localhost:8080/osqa/nimda/ 变成 http://localhost:8080/osqa/nimda/(.*)pybb/category/add/ 不改变页面 这是我的项目的主URL.py文件 from django.conf.urls.defaults import * from django.utils.translation im

我的问题是: 我已经在OSQA中集成了PyBBM,包的管理部分中的所有链接都“断开”

例如,当我单击“添加”时,来自

http://localhost:8080/osqa/nimda/
变成

http://localhost:8080/osqa/nimda/(.*)pybb/category/add/
不改变页面

这是我的项目的主URL.py文件

from django.conf.urls.defaults import *
from django.utils.translation import ugettext as _
from django.conf import settings

urlpatterns = patterns('',
    (r'', include('forum.urls')),
    (r'^groups/', include('pybb.urls', namespace='pybb')), # PYBBM
)

if 'rosetta' in settings.INSTALLED_APPS:
    urlpatterns = patterns('',
        url(r'^rosetta/', include('rosetta.urls')),
    ) + urlpatterns

handler404 = 'forum.views.meta.page'
handler500 = 'forum.views.meta.error_handler'
这是OSQA应用程序“论坛”URL.py的一部分

import startup

import os.path
from forum import settings
from django.conf.urls.defaults import *
from django.conf import settings as djsettings
from django.contrib import admin
from forum import views as app
from forum.sitemap import OsqaSitemap
from django.utils.translation import ugettext as _
import logging

admin.autodiscover()

sitemaps = {
    'questions': OsqaSitemap
}

APP_PATH = os.path.dirname(__file__)

try:
    admin_url = url(r'^%s(.*)' % _('nimda/'), admin.site.root)
except AttributeError:
    admin_url = url(r'^%s(.*)' % _('nimda/'), admin.site.urls)

# Choose the user urls pattern
if bool(settings.INCLUDE_ID_IN_USER_URLS.value):
    core_user_urls_prefix = r'^%s(?P<id>\d+)/(?P<slug>.*)'
else:
    core_user_urls_prefix = r'^%s(?P<slug>.*)'

core_urls = (
    url(r'^$', app.readers.index, name='index'), admin_url,

[...]

    url(r'^%s$' % _('admin/'), app.admin.dashboard, name='admin_index'),
    url(r'^%s%s$' % (_('admin/'), _('switch_interface/')), app.admin.interface_switch, name='admin_switch_interface'),
    url(r'^%s%s$' % (_('admin/'), _('statistics/')), app.admin.statistics, name='admin_statistics'),
    url(r'^%s%s$' % (_('admin/'), _('denormalize/')), app.admin.recalculate_denormalized, name='admin_denormalize'),
    url(r'^%s%s$' % (_('admin/'), _('go_bootstrap/')), app.admin.go_bootstrap, name='admin_go_bootstrap'),
    url(r'^%s%s$' % (_('admin/'), _('go_defaults/')), app.admin.go_defaults, name='admin_go_defaults'),
    url(r'^%s%s(?P<set_name>\w+)/(?P<var_name>\w+)/$' % (_('admin/'), _('settings/')), app.admin.get_default, name='admin_default'),
    url(r'^%s%s$' % (_('admin/'), _('maintenance/')), app.admin.maintenance, name='admin_maintenance'),
    url(r'^%s%s$' % (_('admin/'), _('flagged_posts/')), app.admin.flagged_posts, name='admin_flagged_posts'),
    url(r'^%s%s$' % (_('admin/'), _('static_pages/')), app.admin.static_pages, name='admin_static_pages'),

    url(r'^%s%s%s$' % (_('admin/'), _('static_pages/'), _('new/')), app.admin.edit_page, name='admin_new_page'),
    url(r'^%s%s%s(?P<id>\d+)/$' % (_('admin/'), _('static_pages/'), _('edit/')), app.admin.edit_page, name='admin_edit_page'),
    url(r'^%s%s%s(?P<id>\d+)/$' % (_('admin/'), _('static_pages/'), _('delete/')), app.admin.delete_page, name='admin_delete_page'),

    url(r'^%s%s(?P<name>\w+)/$' % (_('admin/'), _('tools/')), app.admin.tools_page, name='admin_tools'),

    url(r'^%s%s(?P<set_name>\w+)/$' % (_('admin/'), _('settings/')), app.admin.settings_set, name='admin_set'),

    url(r'%s%s' % (_('admin/'), _('test_email_settings/')), app.admin.test_email_settings, name='test_email_settings'),
导入启动
导入操作系统路径
从论坛导入设置
从django.conf.url.defaults导入*
从django.conf将设置导入为django设置
从django.contrib导入管理
从论坛导入作为应用程序的视图
从forum.sitemap导入OsqaSitemap
从django.utils.translation导入ugettext作为_
导入日志记录
admin.autodiscover()
网站地图={
“问题”:OsqaSitemap
}
APP\u PATH=os.PATH.dirname(\u文件\u)
尝试:
admin_url=url(r'^%s(.*)%(('nimda/'),admin.site.root)
除属性错误外:
admin\u url=url(r'^%s(.*)%\u('nimda/'),admin.site.url)
#选择用户URL模式
if bool(设置。在用户URL.value中包含ID):
核心用户URL前缀=r'^%s(?P\d+/(?P.*)”
其他:
核心用户URL前缀=r'^%s(?P.*)
核心URL=(
url(r'^$',app.readers.index,name='index'),管理员url,
[...]
url(r'^%s$'%\('admin/')、app.admin.dashboard、name='admin\u index'),
url(r'^%s%s$'%('admin/'),'switch\u interface/'),app.admin.interface\u switch,name='admin\u switch\u interface'),
url(r'^%s%s$'('admin/')、'statistics/')、app.admin.statistics、name='admin'u statistics'),
url(r'^%s%s$'%('admin/')、'denormalize/')、app.admin.reculate\u denormalized、name='admin\u denormalize'),
url(r'^%s%s$'%('admin/'),'go'u bootstrap/'),app.admin.go'u bootstrap,name='admin'u go'u bootstrap'),
url(r'^%s%s$'%('admin/')、'go\u defaults/')、app.admin.go\u defaults、name='admin\u go\u defaults'),
url(r'^%s%s(?P\w+/(?P\w+/)/$'('admin/')、'settings/')、app.admin.get\u default、name='admin\u default'),
url(r'^%s%s$'('admin/')、'maintenance/')、app.admin.maintenance、name='admin'u maintenance'),
url(r'^%s%s$'%('admin/')、'flagged\u posts/')、app.admin.flagged\u posts、name='admin\u flagged\u posts'),
url(r'^%s%s$'%('admin/')、'static\u pages/')、app.admin.static\u pages、name='admin\u static\u pages'),
url(r'^%s%s%s$'%('admin/'),'uu('static\u page/'),'uu('new/')),app.admin.edit\u page,name='admin\u new\u page'),
url(r'^%s%s%s(?P\d+/$)('admin/'),'uuu('static\u pages/'),'uuu('edit/')),app.admin.edit\u page,name='admin\u edit\u page'),
url(r'^%s%s%s(?P\d+)/$'('admin/'),'uu('static'u pages/'),'uu('delete/')),app.admin.delete_page,name='admin_delete_page'),
url(r'^%s%s(?P\w+/$)('admin/'),'tools/'),app.admin.tools\u page,name='admin\u tools'),
url(r'^%s%s(?P\w+)/$'('admin/')、'settings/')、app.admin.settings\u set、name='admin\u set'),
url(r'%s%s'('admin/'),'test'('email\u settings/')),app.admin.test\u email\u settings,name='test\u email\u settings'),
正如您所看到的,有两个管理部分,可通过两个不同的URL访问

1) 对于OSQA的主管理页面:
http://localhost:8080/osqa/admin/

2) 对于PyBBM包的管理页面(在文章开头)
http://localhost:8080/osqa/nimda/


断开的链接可能有什么问题?

更改Pybmm的管理员url解决了问题

try:
    admin_url = url(r'^adminbb/', include(admin.site.root))#url(r'^%s(.*)' % _('nimda/'), admin.site.root)
except AttributeError:
    admin_url = url(r'^adminbb/', include(admin.site.urls))#url(r'^%s(.*)' % _('nimda/'), admin.site.urls)