【问题标题】:The cloud panel doesn't into directory in django云面板没有进入 django 中的目录
【发布时间】:2018-08-10 20:38:30
【问题描述】:

我写云面板写python/django。我的问题是, urls.py 不访问下一个转发目录。我使用阿帕奇。当它转到下一个前进时,这个页面显示:

https://postimg.org/image/b1t9s26b9/

我的 urls.py 里面:

from django.conf.urls import patterns, include, url
from django.contrib import admin
from django.views.generic.base import TemplateView

admin.autodiscover()

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^$','explorer.views.home',name='home'),
    url(r'^servers/$','explorer.views.servers'),
    url(r'^addserver/$','explorer.views.addserver'),
    url(r'^removeserver/$','explorer.views.removeserver'),
    url(r'^manage/(?P<server>[\w]+)/(?P<path>[\w]+)/$','manager.views.filemanager'),
    url(r'^navback/(?P<server>[\w]+)/(?P<path>[\*\w]+)/$','manager.views.navbackward'),
    url(r'^naviforward(?P<server>[\w]+)/(?P<path>[\*\w]+)/(?P<dir>[\w]+)/$','manager.views.navforward'),
    url(r'^edit/(?P<server>[\w]+)/(?P<path>[\*\w]+)/(?P<file>[\.\w]+)$','manager.views.editdata'),
    url(r'^saveandsend/(?P<server>[\w]+)/(?P<path>[\*\w]+)/(?P<file>[\.\w]+)$','manager.views.senddata'),
    url(r'^upload/(?P<server>[\w]+)/(?P<path>[\*\w]+)/$','manager.views.uploadfile'),
    url(r'^delete/(?P<server>[\w]+)/(?P<path>[\*\w]+)/(?P<file>[\.\w]+)$','manager.views.deletefile'),

]

我的views.py里面:

https://postimg.org/image/s2c60qr2d/

views.py 里面用于 ssh 连接和 sftp 连接:

https://postimg.org/image/635rdjhxx/

我的路由到里面的html文件:

    <div class="col-md-4">
        {% if path != orginalpath %}
        <a href="http://127.0.0.1:8000/navback/{{ server }}/{{ modpath }}/"><span class="glyphicon glyphicon-arrow-left" style="color: #ac2925;height: 30px"></span></a>
    {% endif %}
    {% for d in dirs %}
        <ul>
            <li>
                <span class="glyphicon glyphicon-folder-close" style="color: #eea236"></span>
        <a href="http://127.0.0.1:8000/naviforward/{{ server }}/{{ modpath }}{{ d }}/">{{ d }}</a>
        </li>
        </ul>
        {% endfor %}
     </div>

如果您可以访问项目和图像,您可以查看链接:

https://postimg.org/gallery/3iakj1t7a/

https://gitlab.com/rection/Cloud-Panel-Django.git

如何解决我的问题?

【问题讨论】:

    标签: python regex django django-urls


    【解决方案1】:
    url(r'^naviforward(?P<server>[\w]+)/(?P<path>[\*\w]+)/(?P<dir>[\w]+)/$','manager.views.navforward')
    

    naviforward/&lt;server&gt;matched/&lt;path&gt;matched/&lt;dir&gt;not matched/

    naviforward/DigitalOcean/*root*docker-bench-security/

    您的正则表达式确实有 3 个不同的匹配组,但只给出了 2 个部分;而且我也相信url() 函数采用正则表达式和可调用而不是正则表达式和字符串。

    【讨论】:

    • 我更改为 html 文件:postimg.org/image/vi8vnzg8l,结果不变:postimg.org/image/qjld9ix11
    • 即使您更改了 html,您的链接仍然是一样的。
    • 您说“您的正则表达式确实有 3 个不同的匹配组,但只给出了 2 个部分;而且我也相信 url() 函数采用正则表达式和可调用而不是正则表达式和字符串。 ' 你显示你的来源了吗?
    • Here 是它的文档;需要一个可调用而不是字符串 url(regex, view, kwargs=None, name=None) 而您的网址确实只有 2 个部分,而不是像您的正则表达式中的 3 个部分,我不明白您为什么感到困惑。
    • 你能在 gitlab gitlab.com/rection/Cloud-Panel-Django.git 上更改吗?我无法理解你。
    猜你喜欢
    • 2020-10-31
    • 2014-07-16
    • 2014-05-20
    • 1970-01-01
    • 2012-01-03
    • 2017-07-27
    • 1970-01-01
    • 2010-09-18
    • 1970-01-01
    相关资源
    最近更新 更多