首页 > 解决方案 > Django - 在使用 unique=True 保存时处理 URLField 的额外斜线

问题描述

我有将 URLField 设置为唯一的模型

item_url  = models.URLField(max_length=255, unique=True)

问题是当我从前端(VueJS)获取数据时,我可能会得到带有额外斜杠的 URL。

例如,我的数据库中有以下 URL:

https://themeforest.net/item/vuesax-vuejs-admin-dashboard-template/23328599

并且用户使用相同的 url 发送请求,但带有斜杠,如下所示:

https://themeforest.net/item/vuesax-vuejs-admin-dashboard-template/23328599/

在这种情况下,唯一验证认为它是两个不同的 URL,但实际上它们都是相同的。

另外,最好在没有尾部斜杠的情况下存储 URL。

那么,最好的处理方法是什么?Django 是否提供了一些东西来处理这种情况?

我正在使用 Django + DRF。

谢谢

标签: djangodjango-rest-framework

解决方案


推荐阅读