要将图片存储在Django服务器上,你可以按照以下步骤操作:
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
这将指定图片的存储路径和访问URL。
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
# 其他URL配置...
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
这将配置静态文件的URL与存储路径。
from django.db import models
class MyModel(models.Model):
image = models.ImageField(upload_to='images/')
这将在数据库中创建一个字段来存储图片的路径。
python manage.py makemigrations
python manage.py migrate
from django.shortcuts import render
from myapp.models import MyModel
def upload_image(request):
if request.method == 'POST':
form = MyForm(request.POST, request.FILES)
if form.is_valid():
image = form.cleaned_data['image']
MyModel.objects.create(image=image)
# 其他代码...
return render(request, 'upload_image.html', {'form': form})
这将处理图片上传请求,并将图片保存到服务器上的指定目录。
<form>
标签创建一个表单,用于上传图片。例如:<form method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">上传图片</button>
</form>
这将在页面上显示一个表单,用户可以选择要上传的图片。
{% for obj in objects %}
<img src="{{ obj.image.url }}" alt="图片">
{% endfor %}
这将在页面上显示所有存储在服务器上的图片。
完成以上步骤后,你就可以将图片上传到Django服务器并在页面上显示它们。