标签: imagefield

我是否需要Django中Image Field的额外代码

我在模型中有这个

image_name = models.ImageField(upload_to='accounts/')
Run Code Online (Sandbox Code Playgroud)

在我看来,我有

def account_form(request):
    if request.method == 'POST': # If the form has been submitted...
        form = AccountForm(request.POST) # A form bound to the POST data
        if form.is_valid(): # All validation rules pass
                form.save()
                return HttpResponseRedirect('/thanks/') # Redirect after POST
    else:
        form = AccountForm() # An unbound form

    return render_to_response('account_form.html', {
            'form': form,
    })
Run Code Online (Sandbox Code Playgroud)

我是否需要为保存图像做额外的编码,否则django会自己做

python django imagefield

4
推荐指数
2
解决办法
2449
查看次数

Django ImageField 不会显示在网页上

我在我的 Django 模型中使用了一个 imageField 并且当我尝试在 html 中显示它时无法识别照片。

这是我的models.py

from django.db import models

class LatestRelease(models.Model):
    title = models.CharField(max_length=50)
    description = models.CharField(max_length=300)
    cover = models.ImageField(upload_to='personal/static/img/')
    display = models.BooleanField(default=True)
Run Code Online (Sandbox Code Playgroud)

这是view.py

from django.shortcuts import render
from personal.models import LatestRelease

def index(request):
    releases = LatestRelease.objects.all()
    return render(request, "personal/home.html", {'releases': releases})
Run Code Online (Sandbox Code Playgroud)

HTML代码

 {% for release in releases %}
    <img src="{{ release.cover.url }}" class='' height='235' width='235'>
 {% endfor %}
Run Code Online (Sandbox Code Playgroud)

所以基本上,图像路径{{ release.cover.url }}/personal/static/img/[image name] ,我的照片只有在我使用 url 路径/static/img/[image name]作为源时才会出现。

无论如何要取出/personal从创建的字符串{{ release.cover.url …

html python django model imagefield

4
推荐指数
1
解决办法
1312
查看次数

django imagefield upload_to根本不起作用

我已经编写了一个简单的django应用程序来测试ImageField,但我遇到的问题是upload_to似乎不起作用.以下是代码:

  1 from django.db import models
  2 
  3 # Create your models here.
  4 class TestImage(models.Model):
  5     img = models.ImageField(max_length=256, upload_to='images')
Run Code Online (Sandbox Code Playgroud)

在我的settings.py中,我有:

  2 from os.path import dirname, join, abspath
  3 __dir__ = dirname(abspath(__file__))
 50 MEDIA_ROOT = join(__dir__, 'static')
 55 MEDIA_URL = '/media/'
Run Code Online (Sandbox Code Playgroud)

然后我使用manage.py启动python shell:

jchin@ubuntu:~/workspace/testimage$ ./manage.py shell
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24) 
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> import settings
>>> from image_app.models import TestImage
>>> p = TestImage(img='test.jpg') …
Run Code Online (Sandbox Code Playgroud)

django upload imagefield

3
推荐指数
1
解决办法
3137
查看次数

用于图像域的模型形式的Django自定义验证(最大文件大小等)

我有一个模型,有一个名为'banner'的图像字段,我试图验证文件大小和尺寸,如果图像太大,则提供错误.

这是models.py:

class Server(models.Model):
    id = models.AutoField("ID", primary_key=True, editable=False)
    servername = models.CharField("Server Name", max_length=20)
    ip = models.CharField("IP Address", max_length=50)
    port = models.CharField("Port", max_length=5, default='25565')
    banner = models.ImageField("Banner", upload_to='banners', max_length=100)
    description = models.TextField("Description", blank=True, max_length=3000)
    rank = models.IntegerField(default=0)
    votes = models.IntegerField(default=0)
    website = models.URLField("Website URL", max_length=200, blank=True)
    user = models.ForeignKey(User)
    motd = models.CharField("MOTD", max_length=150, default='n/a')
    playersonline = models.CharField("Online Players", max_length=7, default='n/a')
    online = models.BooleanField("Online", default=False)
    sponsored = models.BooleanField("Sponsored", default=False)
    lastquery = models.DateTimeField('Last Queried', auto_now=True)
    slugurl = models.SlugField("SlugURL", max_length=50)
    def __unicode__(self):
        return …
Run Code Online (Sandbox Code Playgroud)

python django validation modelform imagefield

3
推荐指数
1
解决办法
5463
查看次数

Django图像上传不上传日语命名图像

上传日语命名图像时出现的错误是:ascii'编解码器无法对位置 45-48 中的字符进行编码:序号不在范围内(128)

当以英文字符命名时,图像上传完美。另外,奇怪的是我遇到的错误只是在我将其上传到服务器时。日语命名不会上传到部署服务器,但在开发中运行良好。

我的型号:

class Tenant_Post(models.Model):
    user = models.ForeignKey(User,on_delete=models.CASCADE,null=True)
    name = models.CharField(max_length=255,null=True)
    image = models.FileField(upload_to='image/tenant/',null=True)
    posted_on = models.DateTimeField(auto_now_add=True, auto_now=False)
    last_modified_on = models.DateTimeField(auto_now_add=False, 
    auto_now=True)

    def __unicode__(self):
        return self.name
Run Code Online (Sandbox Code Playgroud)

我的看法:

@login_required(login_url='/')
def new(request):
    if request.method == 'POST':
        print request.POST
        form = TenantForm(request.POST or None, request.FILES or None)
        if form.is_valid():
            instance = form.save(commit=False)
            instance.user = request.user
            instance.save()
            print 'success'
            return HttpResponseRedirect(reverse('tenant:all'))
        else:
            print 'fail'
            return render(request,'tenant/new.html',{'form':form,})
    else:
        form = TenantForm()
        return render(request,'tenant/new.html',{'form':form,})
Run Code Online (Sandbox Code Playgroud)

完整追溯在这里:

File "/opt/python/run/venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
  41.             response = get_response(request) …
Run Code Online (Sandbox Code Playgroud)

python django django-models imagefield

3
推荐指数
1
解决办法
740
查看次数

在 Django 中选择文件后预览照片

我找不到有关此主题的信息。选择照片后(保存表单之前)如何在 Django 中轻松创建照片预览。正如下面的视频所示:

在此输入图像描述

https://youtu.be/HVd2v1aUED0

有没有任何简单的插件可以实现此功能?我认为以这种模式发送照片非常流行(即在保存整个模型之前发送照片的缩略图)。

django imagefield

3
推荐指数
1
解决办法
3092
查看次数

Django 错误“'ImageFieldFile' 对象没有属性 'replace'”

错误信息是:

AttributeError at /projects/

'ImageFieldFile' object has no attribute 'replace'

Request Method:     GET
Request URL:    http://localhost:8000/projects/
Django Version:     2.2.5
Exception Type:     AttributeError
Exception Value:    

'ImageFieldFile' object has no attribute 'replace'

Exception Location:     .../js-portfolio/venv/lib/python3.6/site-packages/django/utils/encoding.py in filepath_to_uri, line 252
Python Executable:  .../js-portfolio/venv/bin/python
Python Version:     3.6.8
Python Path:    

['.../js-portfolio',
 '/usr/lib/python36.zip',
 '/usr/lib/python3.6',
 '/usr/lib/python3.6/lib-dynload',
 '.../js-portfolio/venv/lib/python3.6/site-packages']
Run Code Online (Sandbox Code Playgroud)

我有一个项目模型,它需要一个图像。我将模型添加到我的管理页面,我从管理创建了一个对象,可以添加图像没问题。当我尝试显示我的视图时会出现问题。我什至没有引用 base.html 中的图像。

我的项目模型(models.py):

from django.db import models

class Project(models.Model):
    title = models.CharField(max_length=100)
    description = models.TextField()
    technology = models.CharField(max_length=20)
    image = models.ImageField(default='default.jpg', upload_to='img')

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

我的 settings.py: …

python django imagefield

3
推荐指数
1
解决办法
3522
查看次数

在Drupal 7中将类添加到图像字段

我已将图像字段添加到内容类型"基本页面",并使用"管理显示"选项将其显示在页面顶部.然而,图像上没有样式,我不能为我的生活弄清楚如何在图像中添加一个类,以便我可以添加样式.

drupal-7 imagefield

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

使用 django-stdimage 时是否可以删除“当前”标签?

django-stdimage在我的 Django 应用程序中使用它,它工作得很好,唯一的问题是我想从 HTML 模板中删除“当前”字符串、清除复选框和其余装饰。我无法弄清楚如何实现这一目标。

这是我的 StdImageField 声明models.py

photo = StdImageField(upload_to=join('img', 'agents'),
                      variations={'thumbnail': (100, 100, True)}, default=None,
                      null=True, blank=True, )
Run Code Online (Sandbox Code Playgroud)

我已经阅读了几个关于修改 ImageField 小部件以使用该类的 SO 答案,ClearableFileInput但似乎该widget属性不允许作为StdImageField类参数。

有没有办法去除所有这些装饰?

谢谢你。

python django django-widget imagefield

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

如何获取 DRF 中图像的完整 url?

我英语不好。我希望你明白。

  1. 日记中可以有多个图像。
  2. Diary 和 DiaryImage 是 1:N 的关系。

这是我的模型

from django.db import models

from userSystem.models import User


class Diary(models.Model):
    id = models.BigAutoField(primary_key=True)
    user = models.ForeignKey(User, related_name="diary_user", on_delete=models.CASCADE, null=True)
    title = models.CharField(max_length=30)
    content = models.CharField(max_length=800)
    date_created = models.DateField(auto_now_add=True)


class DiaryImage(models.Model):
    diary = models.ForeignKey(Diary, on_delete=models.CASCADE)
    image = models.ImageField(default='/media/diary/default_image.jpeg', upload_to='diary',
                              blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

这是我的序列化器

from rest_framework import serializers

from diary.models import DiaryImage, Diary


class DiaryImageSerializer(serializers.ModelSerializer):
    image = serializers.ImageField(use_url=True)

    class Meta:
        model = DiaryImage
        fields = ['image']


class DiarySerializer(serializers.ModelSerializer):
    images = serializers.SerializerMethodField()

    def get_images(self, obj): …
Run Code Online (Sandbox Code Playgroud)

python django imagefield django-rest-framework

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