标签: slug

如何在创建友好URL时删除无效字符(即如何创建slug)?

说我有这个网页:http://ww.xyz.com/Product.aspx? CategoryId
= 1

如果CategoryId = 1的名称是"Dogs",我想将URL转换为如下内容:http:
//ww.xyz.com/Products/Dogs

问题是如果类别名称包含外来(或对于URL无效)字符.如果CategoryId = 2的名称是"Göraäldre",那么新网址应该是什么?

逻辑上它应该是:
http: //ww.xyz.com/Products/Göraäldre
但它不起作用.首先是因为空间(我可以很容易地用短划线取代)但是外国人物呢?在Asp.net中我可以使用URLEncode函数,它会给出类似这样的东西:
http://ww.xyz.com/Products/G%c3%b6ra+%c3%a4ldre
但是我不能说它比原来更好url(http://ww.xyz.com/Product.aspx?CategoryId=2)

理想情况下,我想生成这个,但我怎么能自动执行此操作(即将外来字符转换为'安全'url字符):http:
//ww.xyz.com/Products/Gora-aldre

asp.net url-rewriting slug

12
推荐指数
1
解决办法
1万
查看次数

django.db.utils.IntegrityError:UNIQUE约束失败:rango_category__new.slug

我使用Django从Tango学习Django,当我输入时我不断收到此错误:

python manage.py makemigrations rango
python manage.py migrate
Run Code Online (Sandbox Code Playgroud)

这是输出:

django.db.utils.IntegrityError: UNIQUE constraint failed: rango_category__new.slug
Run Code Online (Sandbox Code Playgroud)

Models.py:

from django.db import models
from django.template.defaultfilters import slugify

class Category(models.Model):
    name = models.CharField(max_length=128, unique=True)
    views = models.IntegerField(default=0)
    likes = models.IntegerField(default=0)
    slug = models.SlugField(unique=True)

    def save(self, *args, **kwargs):
        self.slug = slugify(self.name)
        super(Category, self).save(*args, **kwargs)

    def __unicode__(self):
        return self.name


class Page(models.Model):
    category = models.ForeignKey(Category)
    title = models.CharField(max_length=128)
    url = models.URLField()
    views = models.IntegerField(default=0)

    def __unicode__(self):
        return self.title
Run Code Online (Sandbox Code Playgroud)

django slug

12
推荐指数
2
解决办法
2万
查看次数

使用不同的 slug 重建 expo 包

我更改了 React Native/Expo 应用程序的名称,并想要更改与之匹配的 slug,但收到错误“CombinedError:[GraphQL] 名称为 '@-----/newName' 的体验不存在”。使用旧的蛞蝓,它仍然有效。有没有办法用不同的 slug 重建应用程序?

publish slug react-native expo

12
推荐指数
2
解决办法
7485
查看次数

检查字符串是否是名称的缩写

我正在尝试开发一个python算法来检查字符串是否可以是另一个单词的缩写.例如

  • fck是匹配fc kopenhavn因为它匹配单词的第一个字符.fhk不匹配.
  • fco不应该匹配,fc kopenhavn因为没有人会将FC Kopenhavn缩写为FCO.
  • irl是匹配的in real life.
  • ifk是匹配的ifk goteborg.
  • aik是匹配的allmanna idrottskluben.
  • aid是匹配的allmanna idrottsklubben.这不是一个真正的团队名称缩写,但我想除非您应用有关如何形成瑞典语缩写的领域特定知识,否则很难将其排除.
  • manu是匹配的manchester united.

很难描述算法的确切规则,但我希望我的例子能说明我所追求的内容.

更新我在显示匹配字母大写的字符串时犯了一个错误.在实际场景中,所有字母都是小写的,因此它不像检查哪些字母是大写的那么容易.

python text-analysis abbreviation string-matching slug

11
推荐指数
1
解决办法
7923
查看次数

在Django中启用缓慢的URL

我试图在SO使用的形式的Django中启用缓慢的URL:example.com/id/slug.我没有启用slugs的问题,并且目前设置了以下形式的URL:http://127.0.0.1:8000/articles/id /(例如/ articles/1 /),并且工作正常.相应的URLpattern是:

(r'^(?P<object_id>\d+)/$',  'django.views.generic.list_detail.object_detail', info_dict),
Run Code Online (Sandbox Code Playgroud)

如果我将URL模式更改为:

(r'^(?P<slug>\d+)/$',  'django.views.generic.list_detail.object_detail', info_dict),
Run Code Online (Sandbox Code Playgroud)

然后,当我导航到http://127.0.0.1:8000/articles/another-article/时,我收到以下错误:

当前的URL,articles/another-article /与其中任何一个都不匹配.

但是,如果我尝试:

http://127.0.0.1:8000/articles/1/
Run Code Online (Sandbox Code Playgroud)

我收到错误:

找不到与查询匹配的文章

最终,我希望能够通过以下任一方式导航到aricle:

http://127.0.0.1:8000/articles/1/http://127.0.0.1:8000/articles/1/another-article/

django url slug

10
推荐指数
1
解决办法
1万
查看次数

减少Heroku编译的Slug大小

我刚刚在Bamboo-ree-1.8.7堆栈上的应用程序上更新了rails到v2.3.6,编译后的slug大小已经增长到40.5Mb!在最后一次git推送之前,slug大小约为20Mb并使用rails v2.3.5.

是因为我的slug安装了两个导轨版本?可能我错过了一些东西,但我没有在我的应用程序中添加任何特殊的代码/文件,以便将slug大小增加~20Mb.

你能指点我怎样才能减少弹簧尺寸?

任何帮助将不胜感激.

非常感谢你提前.

ruby heroku slug

10
推荐指数
1
解决办法
3518
查看次数

Django Url,Slug for Detail Page

我在配置我的网址时无法显示详细信息视图.点击此链接:<a href='{% url blog_detail blog.slug %}'>{{ blog.name }}</a>显示blog.html,当我认为它会显示blog-detail.html.没有错误,浏览器栏example.com/blog/the-slug显示:,但仍显示html blog.html,而不是blog-detail.html.有什么想法吗?谢谢你的想法.

网址:

url(r'^blog/', 'myapp.views.blog', name='blog'),
url(r'^blog/(?P<slug>[\w-]+)/$', 'myapp.views.blog_detail', name='blog_detail'),
Run Code Online (Sandbox Code Playgroud)

观点:

def blog(request):
    blog_list = Blog.objects.all()
    return render(request, 'blog.html', {'blog_list':blog_list})

def blog_detail(request, slug):
    blog = get_object_or_404(Blog, slug=slug)
    return render(request, 'blog-detail.html', {'blog':blog})
Run Code Online (Sandbox Code Playgroud)

编辑:@omouse请求的输出

这是点击链接的输出.它完全相同blog.html,但它应该是blog-detail.html.Argggg!

<div id='content-wrapper'>
<section>
<div class='blog-name'><h2><a href='/blog/test/'>Test</a></h2></div>
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry&#39;s standard dummy …
Run Code Online (Sandbox Code Playgroud)

django slug urlconf

10
推荐指数
1
解决办法
3万
查看次数

将任何标题转换为url slug并从url slug转换回title

我想将博客条目的任何标题转换为用户友好的URL.我使用rawurlencode()来做到这一点,但它给了我很多奇怪的字符串,如%s.

该算法应该考虑像Ö,Ä等德国字符.我想从标题创建一个网址,并能够通过解码网址获得标题.

我尝试了一些代码:http://pastebin.com/L1SwESBn在其他一些问题中提供,但它似乎是一种方式.

例如 HÖRZU.de -> hoerzu-de -> HÖRZU.de

有任何想法吗?

php string url-encoding slug

9
推荐指数
1
解决办法
1万
查看次数

创建SEO友好URI字符串的最佳方法

该方法应该只允许0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-URI字符串中的" "字符.

制作精美的SEO URI字符串的最佳方法是什么?

java string uri char slug

9
推荐指数
1
解决办法
5794
查看次数

Django:您正在尝试添加一个不可为空的字段“slug”以在没有默认值的情况下进行发布;我们不能那样做

我正在尝试添加 slug,以便帖子的标题出现在网址中,但我在控制台上收到此消息:

You are trying to add a non-nullable field 'slug' to post without a default; we can't do that Please select a fix:
 1) Provide a one-off default now (will be set on all existing rows with a null value for this column)
 2) Quit, and let me add a default in models.py
Run Code Online (Sandbox Code Playgroud)

模型.py

class Post(models.Model):
    
    title = models.CharField(max_length=100)   
    date_posted = models.DateTimeField(default=timezone.now)    
    author = models.ForeignKey(User, on_delete=models.CASCADE)
    slug = models.SlugField(unique=True)

    def save(self, *args, **kwargs):
        self.slug = self.slug or slugify(self.title)
        super().save(*args, …
Run Code Online (Sandbox Code Playgroud)

python django slug

9
推荐指数
1
解决办法
2万
查看次数