作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 Django 有问题。我需要在单页中显示我的文件
所以我创建模型:
class UserProfile(models.Model):
profile_img = models.ImageField(upload_to='media/images/', blank=True, null=True)
profile_text = models.TextField()
profile_title = models.CharField(max_length=300)
profile_user = models.ForeignKey(User)
和表格
class ProfileForm(ModelForm):
class Meta:
model = UserProfile
fields = ['profile_img', 'profile_title']
然后查看
def cabinet(request):
form = ProfileForm(request.POST, request.FILES or None)
if request.method == 'POST' and form.is_valid():
obj = UserProfile(profile_img=request.FILES['profile_img'])
obj = form.save(commit=False)
obj.profile_user = request.user
obj.save()
return redirect(reverse(cabinet))
return render(request, 'cabinet.html', {'form': form})
我尝试使用 View
def user_page(request):
profile = UserProfile.objects.all()
return render(request, 'user_page.html', {'profile':profile})
和
{% for img in profile %}
{{ img.profile_img }}
{% endfor %}
这不工作请帮助我,我尝试阅读文档,但没有帮助
最佳答案
因此,您粘贴的代码只会打印每个 profile.profile_img
的路径。 profile_img
属性也是如此,它只存储您上传的图像的路径,而不存储图像本身。为了使用上传到您网站的媒体文件,您需要在 settings.py
中指定 MEDIA_ROOT
和 MEDIA_URL
。
然后您需要将其附加到您的urls.py
中。您可能还想看看这里:show images in Django templates
完成此操作后,要在模板中显示图像,只需使用 HTML
标签
<img src="{{MEDIA_URL}}{{ img.profile_img }}" />
关于python - 显示上传的文件django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32033121/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!