Jam*_*ell 1 python django model-view-controller function python-2.7
我有以下内容:
class College(models.Model):
url_name = create_url_name()
def create_url_name(self):
return self.name.lower().replace("the", "").strip().replace(" ", "_")
Run Code Online (Sandbox Code Playgroud)
但是当我运行它时,我收到以下错误:
NameError: name 'create_url_name' is not defined
Run Code Online (Sandbox Code Playgroud)
我所做的只是调用我制作的函数,它怎么会不起作用?
如果你想为你的url一个slug你可以像这样使用"SlugField":
from django.utils.text import slugify
class College(models.Model):
name = models.CharField(unique=True, max_length=100)
url_name = models.SlugField(unique=True)
def save(self, *args, **kwargs):
self.url_name = slugify(self.name)
super(College, self).save(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)
您也可以在代码中使用相同的方法:
class College(models.Model):
name = models.CharField(unique=True, max_length=100)
url_name = models.SlugField(unique=True)
def save(self, *args, **kwargs):
self.url_name = self.name.lower().replace("the", "").strip().replace(" ", "_")
super(College, self).save(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
64 次 |
| 最近记录: |