質問編集履歴

8

文言追加

2024/10/24 10:32

投稿

Hikaru-UPP
Hikaru-UPP

スコア6

test CHANGED
File without changes
test CHANGED
@@ -221,7 +221,11 @@
221
221
  /usr/sbin/apache2 ix,
222
222
  }
223
223
  ```
224
-
224
+ 設定適用のため、下記のコードを入力。
225
+ ```ここに言語を入力
226
+ sudo systemctl reload apparmor
227
+ ```
228
+ 上記試しましたが、画像表示には至っておりません。
225
229
 
226
230
  ### 補足
227
231
  Django 4.1.7

7

ソースコードの追加

2024/10/24 10:16

投稿

Hikaru-UPP
Hikaru-UPP

スコア6

test CHANGED
File without changes
test CHANGED
@@ -15,8 +15,132 @@
15
15
 
16
16
  ### 該当のソースコード
17
17
 
18
+ /opt/bitnami/projects/student_info/myvenv/student_info/lessons/views.py
18
- ```
19
+ ```
20
+ from django.views.generic import ListView, DetailView
21
+ from django.views.generic.edit import CreateView, UpdateView, DeleteView
22
+ from .models import Lesson
23
+ from django.urls import reverse_lazy
24
+ from django.contrib.auth.mixins import LoginRequiredMixin
25
+ from .forms import LessonSearchForm,LessonForm
26
+ from django.shortcuts import render, redirect
27
+ from django.core.mail import send_mail
28
+ from django.conf import settings
29
+ from .forms import LessonForm
30
+
31
+ class LessonDetailView(LoginRequiredMixin, DetailView):
32
+ model = Lesson
33
+ template_name = "lessons/lesson_detail.html"
34
+
35
+ def get_context_data(self, **kwargs):
36
+ context = super().get_context_data(**kwargs)
37
+ print(context) # デバッグ用にコンテキストを出力
38
+ return context
39
+
19
- 特になし
40
+ ```
41
+
42
+ /opt/bitnami/projects/student_info/myvenv/student_info/templates/lessons/lesson_detail.html
43
+
44
+ ```ここに言語を入力
45
+ {% extends "base.html" %}
46
+ {% load django_bootstrap5 %}
47
+
48
+ {% block title %}生徒情報詳細{% endblock %}
49
+ {% block content %}
50
+ <h1>生徒情報詳細</h1>
51
+ <form method="post" enctype="multipart/form-data">
52
+ {% csrf_token %}
53
+ <table class="table table-responsive table-striped table-hover table-bordered">
54
+ <tbody>
55
+ <tr>
56
+ <th>授業日</th>
57
+ <td>{{ lesson.day }}</td>
58
+ </tr>
59
+ <tr>
60
+ <th>生徒</th>
61
+ <td>{{ lesson.student }}</td>
62
+ </tr>
63
+ <tr>
64
+ <th>教科</th>
65
+ <td>{{ lesson.subject }}</td>
66
+ </tr>
67
+ <tr>
68
+ <th>講師</th>
69
+ <td>{{ lesson.teacher }}</td>
70
+ </tr>
71
+ <tr>
72
+ <th>宿題確認</th>
73
+ <td>{{ lesson.homework_done }}</td>
74
+ </tr>
75
+ <tr>
76
+ <th>授業テキスト名</th>
77
+ <td>{{ lesson.get_textbook_display }}</td>
78
+ </tr>
79
+ <tr>
80
+ <th>授業ページ</th>
81
+ <td>{{ lesson.contents }}</td>
82
+ </tr>
83
+ <tr>
84
+ <th>授業テキスト名②</th>
85
+ <td>{{ lesson.get_textbook_2_display }}</td>
86
+ </tr>
87
+ <tr>
88
+ <th>授業ページ②</th>
89
+ <td>{{ lesson.contents_2 }}</td>
90
+ </tr>
91
+ <tr>
92
+ <th>解答スピード</th>
93
+ <td>{{ lesson.speed }}</td>
94
+ </tr>
95
+ <tr>
96
+ <th>正確性</th>
97
+ <td>{{ lesson.accuracy }}</td>
98
+ </tr>
99
+ <tr>
100
+ <th>理解度</th>
101
+ <td>{{ lesson.understanding }}</td>
102
+ </tr>
103
+ <tr>
104
+ <th>気分・意欲</th>
105
+ <td>{{ lesson.feeling }}</td>
106
+ </tr>
107
+ <tr>
108
+ <th>次回の宿題(テキスト名)</th>
109
+ <td>{{ lesson.get_next_homework_text_display }}</td>
110
+ </tr>
111
+ <tr>
112
+ <th>次回の宿題(ページ数)</th>
113
+ <td>{{ lesson.next_homework_contents }}</td>
114
+ </tr>
115
+ <tr>
116
+ <th>次回の宿題(テキスト名)②</th>
117
+ <td>{{ lesson.get_next_homework_text_2_display }}</td>
118
+ </tr>
119
+ <tr>
120
+ <th>次回の宿題(ページ数)②</th>
121
+ <td>{{ lesson.next_homework_contents_2 }}</td>
122
+ </tr>
123
+ <tr>
124
+ <th>講評</th>
125
+ <td>{{ lesson.memo }}</td>
126
+ </tr>
127
+ <tr>
128
+ <th>授業シート</th>
129
+ <td style="text-align: center;">
130
+ {% if lesson.class_img %}
131
+ <img src="{{ lesson.class_img.url }}" alt="授業シート" style="max-width: 100%; height: auto;">
132
+ {% else %}
133
+ 画像はありません
134
+ {% endif %}
135
+ </td>
136
+ </tr>
137
+ </tbody>
138
+ </table>
139
+ <p>画像のURL: {{ lesson.class_img.url }}</p>
140
+ <br>
141
+ <a href="{% url 'lesson_list' %}">戻る</a>
142
+ </form>
143
+ {% endblock %}
20
144
  ```
21
145
 
22
146
  ### 試したこと・調べたこと

6

試したことの追加

2024/10/24 09:49

投稿

Hikaru-UPP
Hikaru-UPP

スコア6

test CHANGED
File without changes
test CHANGED
@@ -79,7 +79,24 @@
79
79
  その結果、「Forbidden
80
80
  You don't have permission to access this resource.」となり、画像が表示できませんでした。
81
81
 
82
+ ⒌ AppArmorの設定確認
83
+ ApacheのAppArmorプロファイルの内容を確認しました。
82
84
 
85
+ ```ここに言語を入力
86
+ sudo cat /etc/apparmor.d/usr.sbin.apache2
87
+ ```
88
+ 白紙だったため、下記のコードを加えて、アクセス権の設定を行いました。
89
+
90
+ ```ここに言語を入力
91
+ # Apache web server profile
92
+ /usr/sbin/apache2 {
93
+ # アクセス権の設定
94
+ /opt/bitnami/apache2/** r,
95
+ /opt/bitnami/projects/student_info/myvenv/student_info/media_local/ r,
96
+ /opt/bitnami/projects/student_info/myvenv/student_info/media_local/** rw,
97
+ /usr/sbin/apache2 ix,
98
+ }
99
+ ```
83
100
 
84
101
 
85
102
  ### 補足

5

文言追加

2024/10/24 02:43

投稿

Hikaru-UPP
Hikaru-UPP

スコア6

test CHANGED
File without changes
test CHANGED
@@ -46,6 +46,8 @@
46
46
  MEDIA_ROOT = BASE_DIR / 'media_local'
47
47
  ```
48
48
 
49
+ 表示させたい画像は、「media_local」内に保存されています。
50
+
49
51
  ⒊ media_localのディレクトリとファイルのアクセス権限の確認
50
52
  下記のコードにて、ディレクトリとファイルのアクセス権限を確認しました。
51
53
 

4

添付写真の追加

2024/10/24 02:09

投稿

Hikaru-UPP
Hikaru-UPP

スコア6

test CHANGED
File without changes
test CHANGED
@@ -87,3 +87,7 @@
87
87
  該当するページは、「templates/lessons/lesson_detail.html」なので、念のため、データベースから画像を引っ張ってこようとできているのかを確認するため、画像のURLを下記のように、して確認してみました。
88
88
 
89
89
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2024-10-23/6fe396cc-0613-4ede-bfdf-3e29d4dce509.png)
90
+
91
+ その結果、下記のように、画像のURLが表示されているので、media_localディレクトリの画像を引き出そうとしているように思います。
92
+
93
+ ![![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2024-10-24/3e77ea22-4f40-426d-95a9-8730a232c096.png)](https://ddjkaamml8q8x.cloudfront.net/questions/2024-10-24/d6f8372d-e823-42a2-9f9b-d13d92fee55b.png)

3

初心者マーク

2024/10/23 09:39

投稿

Hikaru-UPP
Hikaru-UPP

スコア6

test CHANGED
@@ -1 +1 @@
1
- error_logのAH01630: client denied by server configurationを解消し、表示できていない画像を表示させたい
1
+ 【お力貸してください】error_logのAH01630: client denied by server configurationを解消し、表示できていない画像を表示させたい
test CHANGED
File without changes

2

URLを目隠し

2024/10/23 02:22

投稿

Hikaru-UPP
Hikaru-UPP

スコア6

test CHANGED
File without changes
test CHANGED
@@ -72,7 +72,7 @@
72
72
  ⒋ ブラウザで直接アクセス
73
73
  そこで、アクセス権が許可されていることを確認したので、一度、直接画像のURLをブラウザで入力し、確認しました。
74
74
 
75
- https://admin.seiseki-up-labo.com/media/%E5%8B%89%E5%BC%B7%E9%A2%A8%E6%99%AF_5Zostgw.jpg
75
+ https://○○〇.com/media/%E5%8B%89%E5%BC%B7%E9%A2%A8%E6%99%AF_5Zostgw.jpg
76
76
 
77
77
  その結果、「Forbidden
78
78
  You don't have permission to access this resource.」となり、画像が表示できませんでした。

1

DjangoとApacheのバージョン情報追加

2024/10/23 02:21

投稿

Hikaru-UPP
Hikaru-UPP

スコア6

test CHANGED
File without changes
test CHANGED
@@ -81,6 +81,9 @@
81
81
 
82
82
 
83
83
  ### 補足
84
+ Django 4.1.7
85
+ Apache/2.4.59 (Unix)
86
+
84
87
  該当するページは、「templates/lessons/lesson_detail.html」なので、念のため、データベースから画像を引っ張ってこようとできているのかを確認するため、画像のURLを下記のように、して確認してみました。
85
88
 
86
89
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2024-10-23/6fe396cc-0613-4ede-bfdf-3e29d4dce509.png)