🚀
Django models.py FileFieldを複数選択可能にする。
models.py
class Post(models.Model):
files = models.ManyToManyField('MyFile')
class MyFile(models.Model):
file = models.FileField(upload_to='uploads/', blank=True, null=True)
admin.py
from django.contrib import admin
from . import models
from django.utils.html import format_html
@admin.register(models.Post)
class PostAdmin(admin.ModelAdmin):
list_display = ('title', 'files_links')
def files_links(self, obj):
links = ""
for my_file in obj.files.all():
url = my_file.file.url
name = my_file.file.name.split('/')[-1]
link = f'<a href="{url}">{name}</a><br/>'
links += link
return format_html(links)
@admin.register(models.MyFile)
class MyFileAdmin(admin.ModelAdmin):
pass
Discussion