简体   繁体   English

如何在django中上传图片

[英]how to upload image in django

Here is my settings.py:这是我的settings.py:

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

Here is urls.py:这是 urls.py:

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

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('laxmi.urls')),
] + static(settings.MEDIA_URL, documents_root=settings.MEDIA_ROOT)

Here is my model:这是我的模型:

class Services(models.Model):
    title = models.CharField(max_length=250)
    desc = models.TextField()
    img = models.ImageField(upload_to='img')
    def __str__(self):
        return self.title

Views:意见:

def index(request):
    why_choose_uss = why_choose_us.objects.all()
    servicess = Services.objects.all()
    return render(request, 'laxmi/index.html', {'servicess': servicess, 'why_choose_uss': 
    why_choose_uss})

Template:模板:

{% for services in servicess %}
  <div class="col mb-4">
    <div class="card">
      <img src="{{services.img.url}}"class="card-img-top" alt="...">
      <div class="card-body">
        <h5 class="card-title">{{services.title}}</h5>
        <p class="card-text">{{services.desc}}</p>
        <a href="#" class="btn btn-primary">Lern More</a>
      </div>
    </div>
  </div>
{% endfor %}

And here is an image upload from admin pannel but its not shwoing in template这是从管理面板上传的图像,但它没有在模板中显示在此处输入图片说明

here it is model in admin panel output in template这是模板中管理面板输出中的模型

Try to substitute尝试替换

<img src="{{services.img.url}}"class="card-img-top" alt="...">

with

<img src="{{services.img.url}}" class="card-img-top" alt="..." />

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM