小编Cla*_*der的帖子

“profile_picture”属性没有与之关联的文件

我正在尝试创建对我的个人资料的访问,但我的模型属性之一 (profile_picture) 为空,这导致我的个人资料页面崩溃。我已经设置了blank=True,它早些时候可以工作,但从那以后它就停止工作了,我不明白为什么。如果我进入 django admin 并手动添加配置文件,那么我可以再次访问我的配置文件,一切正常。我想我的问题是,为什么即使 profile_pic 属性为空,我也无法查看我的个人资料?不应该blank=True管这个吗?

模型.py

from __future__ import unicode_literals

from django.db import models
from django.contrib.auth.models import User
from django.db.models.signals import post_save

# Create your models here.
class UserProfile(models.Model):
    user = models.OneToOneField(User)
    description = models.CharField(max_length=100, default='')
    city = models.CharField(max_length=100, default='')
    website = models.URLField(default='')
    phone = models.IntegerField(default=0)
    profile_picture = models.ImageField(upload_to='profile_pics', blank=True)

    def __str__(self):
        return self.user.username
Run Code Online (Sandbox Code Playgroud)

视图.py

def edit_user_profile(request):
    if request.method == 'POST':
        form = EditUserProfileForm(request.POST, instance=request.user.userprofile)
        if form.is_valid():
            form.save()

            return redirect('/accounts/profile')
    else:
        form = …
Run Code Online (Sandbox Code Playgroud)

django attributes

5
推荐指数
1
解决办法
8740
查看次数

如何在 Django 中显示模型中的图像

需要明确的是,我尝试过自己研究这个,但由于我对 Django 还是很陌生,我无法理解这里的解决方案。我也阅读了文档,但我不明白我做错了什么。我无法将位于“ad_pictures”目录中的图像显示在 HTML 中。

这是我的代码:

设置.py

STATIC_URL = '/static/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
Run Code Online (Sandbox Code Playgroud)

urls.py(项目)

from django.conf.urls import url, include
from django.contrib import admin
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^accounts/', include('accounts.urls')),
    url(r'^classifieds/', include('classifieds.urls')),

 ] +static(settings.MEDIA_URL, document_ROOT=settings.MEDIA_ROOT)
Run Code Online (Sandbox Code Playgroud)

urls.py(分类应用程序)

from django.conf.urls import url
from . import views

app_name = 'classifieds'

urlpatterns = [
    url(r'^create/', views.create, name='create'),
    url(r'^latestads/', views.latestads, name='latestads'),
]
Run Code Online (Sandbox Code Playgroud)

模型.py

class Post(models.Model):

    title = models.CharField(max_length=150)
    price = models.CharField(max_length=100)
    body = …
Run Code Online (Sandbox Code Playgroud)

python django upload image

2
推荐指数
1
解决办法
4294
查看次数

标签 统计

django ×2

attributes ×1

image ×1

python ×1

upload ×1