当我阅读Django代码时,我经常在模型中看到所谓的“子弹”。 我不太清楚这是什么,但是我知道它与URL有关。 应该如何以及何时使用这种this子?

(我已经在本词汇表中阅读了其定义。)


#1楼

如果我可以提供一些历史背景:

“弹头”一词与铸造金属(在这种情况下为铅)有关,而印刷字体是由铅制成的。 然后,每张纸的字体工厂都会定期重新熔化,并用新鲜的模具重新铸造,因为经过多次印刷后,它们已经磨损了。 像我这样的学徒从那里开始了他们的职业生涯,并一路攀升到了顶峰(不再有)。

排版者必须以倒排的方式撰写文章文字,并以明智的方式堆叠主角。 因此,在打印时,字母将直接在纸上。 所有的印刷机都能像打印的报纸一样快地阅读报纸。 因此,(如蜗牛)和慢故事(最后要修复的故事)在板凳席上等待着很多,只能通过拳头字母来识别,通常整个标题通常更易读。 一些“热门”新闻在板凳上等待着,可能在最后组装和确定印刷之前进行最后一分钟的更正(晚上用纸)。

Django来自堪萨斯州《劳伦斯》杂志的办公室。 也许还有一些印刷术语仍然存在。 django爱好者和来自法国的友好的老-男孩。


#2楼

也可以在django-admin上自动启动。 在ModelAdmin上添加:

prepopulated_fields = {'slug': ('title', )}

如这里:

class ArticleAdmin(admin.ModelAdmin):list_display = ('title', 'slug')search_fields = ('content', )prepopulated_fields = {'slug': ('title', )}

#3楼

Slug是一个报纸术语。 子弹是某事物的简短标签,仅包含字母,数字,下划线或连字符。 它们通常在URL中使用。 (如Django文档)

Django中的Slug字段用于为动态创建的网页存储和生成有效的URL 。

就像您在Stack Overflow上添加此问题的方式一样,并生成了一个动态页面,当您在地址栏中看到时,您会看到问题标题带有“-”代替空格。 这正是田的工作。

您输入的标题是这样的->在Django中,“子弹”是什么?

将其存储到slug字段中后,它变成“ what-is-a-slug-in-django”(请参阅​​此页面的URL)


#4楼

Slug是特定内容的URL友好短标签。 它仅包含字母,数字,下划线或连字符。 子弹通常与各自的内容一起保存,并作为URL字符串传递。

Slug可以使用SlugField创建

例如:

class Article(models.Model):title = models.CharField(max_length=100)slug = models.SlugField(max_length=100)

如果要将title用作slug,django有一个名为slugify的简单函数

from django.template.defaultfilters import slugifyclass Article(models.Model):title = models.CharField(max_length=100)def slug(self):return slugify(self.title)

如果需要唯一性,则在子域中添加unique=True

例如,从前面的示例中:

class Article(models.Model):title = models.CharField(max_length=100)slug = models.SlugField(max_length=100, unique=True)

您是否懒于进行处理? 不用担心,此插件将为您提供帮助。 django-autoslug


#5楼

从这里 。

“ Slug”是报纸上的术语,但此处的含义是URL的最后一部分。 例如,标题为“关于Django的一点”的帖子将自动变为“ bit-about-django”(当然,如果您不喜欢自动生成的子弹,则可以轻松地对其进行更改)。


#6楼

它是URL的描述性部分,可以使它更具人工描述性,但不一定是Web服务器所必需的- 在Django中什么是“子弹”? slug是“ in-django-what-is-a-slug”,但不使用slug来确定所服务的页面 (至少在此站点上)


#7楼

“子弹”是一种通常使用已获得的数据生成有效URL的方法。 例如,一个ug使用文章标题来生成URL。 我建议通过给定标题(或另一段数据)的函数来生成段,而不要手动设置它。

一个例子:

<title> The 46 Year Old Virgin </title>
<content> A silly comedy movie </content>
<slug> the-46-year-old-virgin </slug>

现在,我们假设我们有一个Django模型,例如:

class Article(models.Model):title = models.CharField(max_length=100)content = models.TextField(max_length=1000)slug = models.SlugField(max_length=40)

您将如何使用URL和有意义的名称引用该对象? 例如,您可以使用Article.id,因此URL如下所示:

www.example.com/article/23

或者,您可能希望像这样引用标题:

www.example.com/article/The 46 Year Old Virgin

由于空格在URL中无效,因此必须将其替换为%20 ,这将导致:

www.example.com/article/The%2046%20Year%20Old%20Virgin

两次尝试都不会产生非常有意义且易于阅读的URL。 这个更好:

www.example.com/article/the-46-year-old-virgin

在此示例中, the-46-year-old-virgin是一个ug:它是通过将所有字母缩进小写并用连字符-代替空格从标题创建的。

另请参见此网页的URL。


#8楼

从历史上看,“子弹”一词来自报纸编辑界。

这是制作过程中故事的非正式名称。 随着故事从曲折的记者到编辑再到“印刷机”的曲折曲折,这就是它所引用的名称,例如,“您是否已修复“俄罗斯剪裁-欧洲天然气”故事中的错误? ?”。

Django使用它作为URL的一部分来查找故事,例如www.mysite.com/archives/russia-cuts-europe-gas


#9楼

sl

某物的简短标签,仅包含字母,数字,下划线或连字符。 它们通常在URL中使用。 例如,在典型的博客条目URL中:

https://www.djangoproject.com/weblog/2008/apr/12/spring/最后一点(弹簧)是弹头。

在Django中,“子弹”是什么?相关推荐

  1. 如何在Django中接收JSON格式的数据

    Django做了大量工作简化我们的Web开发工作, 这其中当然也包括接收来自客户端的数据这一普遍需求. 大部分时候,从客户端传入的数据主要是FORM的POST数据,和来自URL的GET数据, 在Dja ...

  2. django中使用celery简单介绍

    链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. 本章节我们重点在于实现,如何存储任务的结果. 我们将任务函数改为: from celery_demo.celery im ...

  3. Django中的Form

    2019独角兽企业重金招聘Python工程师标准>>> 一.使用Form Django中的Form使用时一般有两种功能: 1.生成html标签 2.验证输入内容 要想使用django ...

  4. Windows下在Django中创建项目时ImportError: No module named django.core解决方法

    Windows下在Django中创建项目时ImportError: No module named django.core解决方法 今天在对照<Python编程:从入门到实践>学## 标题 ...

  5. echarts导入mysql数据库_Echarts最新:Django中从mysql数据库中获取数据传到echarts方式_爱安网 LoveAn.com...

    关于"Echarts"的最新内容 聚合阅读 这篇文章主要介绍了基于vue+echarts 数据可视化大屏展示的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随 ...

  6. 在BAE搭建的Django中实现图片上传并用jquery预览图片

    在BAE上搭建好了django,如何实现图片上传并预览呢? 想要实现图片上传并不难,但是想看到刚上传的图片,就得在服务器返回上传后图片的url.可是返回数据的话,网页就会重定向.因此想要在上传页面预览 ...

  7. web.py中实现类似Django中的ORM的查询效果

    Django中的对象查询 Django框架自带了ORM,实现了一些比较强大而且方便的查询功能,这些功能和表无关.比如下面这个例子: class Question(models.Model):quest ...

  8. django中自定义标签和过滤器

    django中自定义标签和过滤器 原文:http://www.cnblogs.com/MnCu8261/p/5934203.html 纪念如何填了半天的坑,红色重点 想要实现自定义标签和过滤器需要进行 ...

  9. Django中Mysql数据库的使用

    django中内嵌了ORM框架,不需要直接面向数据库编程,而是定义模型类,通过模型类和对象完成数据表的增删改查操作. 使用django进行数据库开发的步骤如下: 配置数据库连接信息 在配置文件中注册 ...

最新文章

  1. tomcat通过conf-Catalina-localhost目录发布项目详解
  2. word标题文字居中浅谈
  3. linux 进程防火墙连接管理,Linux系统管理初步(五)系统防火墙控制程序firewalld...
  4. 计算机的相关配置信息,win7系统查看电脑配置相关信息的方案介绍
  5. docker与jenkins学习
  6. 基于jquery,ajax请求及自我终止的函数封装
  7. 【Elasticsearch】Nori:官方的韩语分析插件Elasticsearch
  8. python的变量名有哪些_Python 趣闻:如何获得变量的名字?
  9. Eclipse中的SVN插件
  10. 网络防火墙与防范溢出策略“溢出”
  11. php 快速路由,基于FastRoute的快速路由(支持RESTful)
  12. 计算机学硕编码,怎么区分学硕和专硕代码
  13. 怎么查看html隐藏代码,隐藏HTML源代码 怎样查看网页中隐藏的html源码
  14. 使用计算机辅助翻译,计算机辅助翻译方法
  15. python编程从入门到实践练习7-10:梦想的旅游胜地
  16. Jmeter 线程数、Ramp-Up、循环次数 详解
  17. Excel 2010 VBA 入门 058 定时运行程序
  18. matlab来解决城市设计,Matlab的实际应用设计(经典).doc
  19. 安装kubernetes dashboard时开发环境,运行gulp local-up-cluster任务一直显示wating for a heapster
  20. Ubuntu16.04编译roc-rk3328-cc

热门文章

  1. C++模板学习之函数对象之谓词
  2. Ubuntu 安装 搜狗输入法
  3. 第四周项目一-求四个数的最大公约数
  4. git 切换成远程分支
  5. Android之自定义一个环形进度控件
  6. Android之利用ColorMatrix进行图片的各种特效处理
  7. C语言函数集(二十)
  8. 数据算法——Spark二次排序
  9. keil5图标变成白色_PPT中高大上的图标是怎么做的?
  10. weblogic在linux服务器上部署应用