&引用;并非所有参数都在字符串格式化过程中转换;Python Django
我在WindowsVista上用Python2.7用Django1.5编程。我正在尝试创建用户配置文件。然而,当我访问localhost:8000/admin/home/userprofile时,我得到了1146,“表'demo.home\u userprofile'不存在错误。现在我在&引用;并非所有参数都在字符串格式化过程中转换;Python Django,python,django,Python,Django,我在WindowsVista上用Python2.7用Django1.5编程。我正在尝试创建用户配置文件。然而,当我访问localhost:8000/admin/home/userprofile时,我得到了1146,“表'demo.home\u userprofile'不存在错误。现在我在models.py中有了: from django.db import models from django.contrib.auth.models import User # Create your model
models.py中有了:
from django.db import models
from django.contrib.auth.models import User
# Create your models here.
class userProfile(models.Model):
def url(self, filename):
ruta = "MultimediaData/Users/$s/%s"%(self.user.username, filename)
return ruta
user = models.OneToOneField(User)
photo = models.ImageField(upload_to = url)
telefono = models.CharField(max_length = 30)
def __unicode__(self):
return self.user.username
Django页面将字符串格式化过程中转换的参数都指向了我。这是一个允许用户上传图片和电话号码的页面。问题出在哪里?更改:
ruta = "MultimediaData/Users/$s/%s"%(self.user.username, filename)
致:
您似乎使用了$
而不是%
,这就是问题所在。要使其与Python 2或3兼容
ruta = "MultimediaData/Users/{0}/{1}".format(self.user.username, filename)
为什么要投否决票?如果你要投否决票,至少要礼貌地告诉他们为什么。我的答案或@volatile的答案绝对没有错。不,只是“$”符号。像这样的小错误。我在Django 1.6中,在同一个views.py文件中,在一个地方,而不是另一个地方,也会遇到同样的错误。我一直盯着e%确保这两个地方都不是一美元,大概有十几次。发疯了。:)如果我弄明白了,我会在这里加上。
ruta = "MultimediaData/Users/{0}/{1}".format(self.user.username, filename)