Я пытаюсь создать простой веб-сайт, который отображает список сборщиков средств из базы данных с изображением для каждого сборщика средств. Однако я не могу понять, почему изображения не появляются. Моя модель сбора средств выглядит следующим образом:
class Fundraiser(models.Model):
fundraiserImage = models.ImageField(upload_to='images/', blank=True)
Я попытался отобразить каждый сборщик средств в базе данных, как показано в файле vue ниже.
template>
<div>
<div>
<ul>
<li v-for="f of fundraisers" v-bind:key="f.id">
<img src="f.fundraiser.fundraiserImage.url" width="500">
</li>
</ul>
{{fundraisers}}
</div>
</div>
</template>
<script>
import axios from 'axios'
export default {
name: 'Fundraiser',
data () {
return {
fundraisers: []
}
},
mounted: function () {
this.getFundraisers()
},
methods: {
getFundraisers: function () {
// var app = this;
axios.get('/api/fundraisers/?format=json')
.then(response => (this.fundraisers = response.data))
}
}
}
</script>
<style>
</style>
Вот фрагмент соответствующего код из моего файла settings.py:
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, '../frontend/dist/static/')
]
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'mellon/media')
и фрагмент соответствующего кода из моего файла urls.py:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)