Djangoを使ってPDFをサイト上に表示させたいのですがやり方がわかりません。
models.py
python
1class Item(models.Model): 2 service_name = models.CharField( 3 verbose_name='サービス名', 4 max_length=200, 5 ) 6 sales_files = models.FileField( 7 upload_to='uploads/%Y/%m/%d/', 8 verbose_name='添付ファイル', 9 blank=True, 10 ) 11 service_content = models.TextField( 12 verbose_name='詳細', 13 max_length=300, 14 blank=True, 15 null=True, 16 ) 17 18 created_at = models.DateTimeField( 19 verbose_name='登録日', 20 auto_now_add=True 21 ) 22 class Meta: 23 verbose_name = 'アイテム' 24 verbose_name_plural = 'アイテム' 25
forms.py
python
1class ItemForm(forms.ModelForm): 2 class Meta: 3 model = Item 4 fields = '__all__' 5 widgets = { 6 'service_name': forms.TextInput(attrs={'placeholder':'サービス名を入力してください'}), 7 }
views.py
python
1class ItemCreateView(LoginRequiredMixin, CreateView): 2 model = Item 3 form_class = ItemForm 4 success_url = reverse_lazy('register:top')
item_detail.html
html
1{% extends "register/base.html" %} 2{% block content %} 3<div class="container"> 4 <h2 class="text-center">詳細表示</h2> 5 <div class="row"> 6 <div class="col-12"> 7 <a class="btn btn-outline-secondary float-right" href="{% url 'register:top' %}">戻る</a> 8 </div> 9 </div> 10 <!-- --> 11 {% include "./item_card.html" %} 12 <div class="row"> 13 <div class="col-12"> 14 <a class="btn btn-outline-secondary float-right" href="{% url 'register:top' %}">戻る</a> 15 </div> 16 </div> 17</div> 18{% endblock %}
item_card.html
<p>{{ item.sales_files }}</p> の所を iframe に入れて試したですが、表示されませんでした。 PDFの表示方法誰か知っている方いれば教えてください。 よろしくお願いいたします。html
1<div class="row"> 2 <div class="col-3"> 3 <p>サービス名</p> 4 </div> 5 <div class="col-9"> 6 <p>{{ item.service_name }}</p> 7 </div> 8</div> 9<div class="row"> 10 <div class="col-3"> 11 <p>添付ファイル</p> 12 </div> 13 <div class="col-9"> 14 <p>{{ item.sales_files }}</p> 15 </div> 16</div> 17<div class="row"> 18 <div class="col-3"> 19 <p>登録日</p> 20 </div> 21 <div class="col-9"> 22 <p>{{ item.created_at|date:"Y/m/d G:i:s" }}</p> 23 </div> 24</div>
「表示されませんでした」とのことですが、具体的には何が起きましたか?
結果(実際に起きたこと)を書きましょう
https://teratail.com/help/question-tips#questionTips3-4-1
エラーメッセージや実行ログをコピー&ペーストしましょう
https://teratail.com/help/question-tips#questionTips3-4-2
あなたの回答
tips
プレビュー