团队中所有路径中 url 的共同开始

用户10605113

我只是在 Django 1.11 中处理一个项目。我对如何制作 url 的通用开头有疑问。例如,创建团队后,所有成员的地址应如下所示:

domain.com/name_of_team
domain.com/name_of_team/blog
domain.com/name_of_team/blog/title_of_post

项目中的主 url 文件:

urlpatterns = [
    url(r'', include('blog.urls', namespace='blog')),
    url(r'^accounts/', include('accounts.urls', namespace='accounts')),
    url(r'^admin/', admin.site.urls),
]

博客中的网址:

url(r'^$', login_required(RedirectToHome.as_view()), name='redirect_home'),
url(r'^t/(?P<pk>[0-9]+)/$', login_required(BlogHome.as_view()), name='blog_list'),
url(r'create/$', login_required(BlogCreate.as_view()), name='blog_create'),
url(r'^(?P<pk>[0-9]+)/delete/$', login_required(BlogDelete.as_view()), name='blog_delete'),
url(r'^(?P<pk>[0-9]+)/update/$', login_required(BlogUpdate.as_view()), name='blog_update'),
url(r'^(?P<pk>\d+)?/?$', login_required(BlogDetail.as_view()), name='blog_detail'),

也许有一些处理 url 地址的好做法?

标记行者_

为了使博客应用程序特定于每个团队,您可以包含它的 URL;

url(r'^(?P<team_slug>[\w-]+)/', include('blog.urls', namespace='blog')),

这显然假设您的Team模型有一个slug字段,以便您可以安全地将其添加到上下文中并使用它来形成blog应用程序的 URL

然后Mixin您可以拥有一个可以由博客中的视图共享的视图,或者向共享的基本视图添加一些内容,该视图加载Team

from django.views.generic.base import ContextMixin

from .models import Team


class TeamMixin(ContextMixin):

    def get_context_data(self, **kwargs):
        context = super(TeamMixin, self).get_context_data(**kwargs)
        context['team'] = Team.objects.get(slug=kwargs.get('team_slug'))
        return context

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

寻找共同的类集合中的所有对象

查找NxN网格中所有路径的算法

打印Java8中所有受支持的URL方案

.htaccess重写所有URL,即使路径

图论-从顶点A开始,经过两个方向的所有路径,最后以最短的方式到达A

在Swift中从URL删除所有路径组件

在JavaScript中从头开始创建空的URL对象

角单个URL用于所有路由?

获取Django中所有URL名称的列表以在导航中创建活动链接

Axios.delete(url [,config]):类型与“ AxiosRequestConfig”类型没有共同的属性

如何根据URL中的开始文本选择页面上的所有href值?

让所有父母共同拥有孩子

URL中页面名称后所有路径的ASP.NET Core Razor页面端点路由

如何使用MediaPlayer从具有偏移的URL开始音频流?

具有单个入口点的zf2网站,URL中没有路由/路径

获取资源:// * URL中所有顶级目录的列表

htaccess用字符替换重写路径中的所有URL

打印矩阵中的所有路径

如何获得一年中所有星期的所有开始日期

从北美开始的Google静态地图路径,尽管URL中未指定该位置

在MySQL中选择所有带有共同开始短语的字段

阻止Google Chrome浏览器将具有共同基础的所有URL视为SSL连接

REGEX如何获取Javascript中youtube URL的开始时间

开始从其他片段中加载片段中的url

PHP脚本获取json字符串中目录中所有图像的URL

替换字符串中所有URL中的主机-Node.js

获取 Trie 中所有路径的路径中的最大结束词数

使用 Gremlin (AWS Neptune),如何从具有特定条件的开始节点遍历边缘获取长度为 n 的所有路径?

IIS 重写问题 - 如何重写没有路径的初始 URL 到带有路径的 URL