Django - Affiliate链接设置与URL重定向

时间:2011-01-04 23:19:45

标签: django url django-views

有没有人知道用隐形链接或简短替换长联盟网址的更好方法,以便用户只看到缩短的链接。

这样的事情: “anothersite.com/offer.html/affiliate_id=001” 披着这样的: “http://site.com/click/offer”

假设有更多这样的会员链接,设置重定向很容易填满更多模式的urls.py。 Django的内置通用视图提供了设置(外部)URL重定向应用程序的方法,但只是想知道是否有更好的方法可以在不填充.htaccess或urls.py的情况下执行此操作。

3 个答案:

答案 0 :(得分:1)

如果您希望将来能够在此基础上进行构建,您可以创建自己的简单模型:

class AffiliateLink(models.Model):
    slug = models.SlugField(unique=True)
    full_url = models.URLField()

然后创建一个视图来进行重定向:

def affiliate_link(request, slug):
    link = get_object_or_404(AffiliateLink, slug=slug)
    return redirect(link.full_url)

然后设置urls文件:

(r'^affiliates/(?P<slug>[^/]+/', 'myapp.views.affiliate_link'),

就是这样。

答案 1 :(得分:0)

Django附加了redirects app

答案 2 :(得分:0)

还有https://github.com/arteria/django-redirect-plus,每个重定向规则都带有一个简单的点击计数器。这有助于跟踪您的综合附属计划。