回答編集履歴
7
修正
answer
CHANGED
|
@@ -16,10 +16,12 @@
|
|
|
16
16
|
```
|
|
17
17
|
```HTML
|
|
18
18
|
{% load widget_tweaks %}
|
|
19
|
+
<form method="post" ・・・enctype="multipart/form-data">
|
|
19
|
-
<label for="load">
|
|
20
|
+
<label for="load">
|
|
20
|
-
|
|
21
|
+
<img src="{{request.user.image.url}}" alt="" id="preview">
|
|
21
|
-
|
|
22
|
+
<div style="display:none;">{% render_field form.image id="load" %}</div>
|
|
22
|
-
</label>
|
|
23
|
+
</label>
|
|
24
|
+
</form>
|
|
23
25
|
<!-- jsを使う -->
|
|
24
26
|
<script type="text/javascript">
|
|
25
27
|
function preview_image(obj) {
|
6
修正
answer
CHANGED
|
@@ -1,16 +1,34 @@
|
|
|
1
1
|
UpdateViewでは、デフォルトでは画像は表示されず、
|
|
2
2
|
URLしか表示されません。
|
|
3
3
|
----追記欄----
|
|
4
|
+
こんな感じにいけませんか?
|
|
5
|
+
[widget_tweaks](https://wonderwall.hatenablog.com/entry/2018/03/18/210000)を使い、
|
|
6
|
+
インストール
|
|
7
|
+
```
|
|
8
|
+
pip install django-widget-tweaks
|
|
9
|
+
```settings.py の INSTALLED_APPS に追加
|
|
10
|
+
```Python
|
|
11
|
+
INSTALLED_APPS = [
|
|
12
|
+
"django.contrib.admin",
|
|
13
|
+
・・・
|
|
14
|
+
"widget_tweaks", # 追加
|
|
15
|
+
]
|
|
16
|
+
```
|
|
17
|
+
```HTML
|
|
18
|
+
{% load widget_tweaks %}
|
|
19
|
+
<label for="load">
|
|
20
|
+
<img src="{{request.user.image.url}}" alt="" id="preview">
|
|
21
|
+
<div style="display:none;">{% render_field form.image id="load" %}</div>
|
|
22
|
+
</label>
|
|
4
|
-
|
|
23
|
+
<!-- jsを使う -->
|
|
24
|
+
<script type="text/javascript">
|
|
25
|
+
function preview_image(obj) {
|
|
26
|
+
var fileReader = new FileReader();
|
|
27
|
+
fileReader.onload = (function() {
|
|
28
|
+
document.getElementById("preview").src = fileReader.result;
|
|
29
|
+
});
|
|
30
|
+
fileReader.readAsDataURL(obj.files[0]);
|
|
31
|
+
}
|
|
32
|
+
</script>
|
|
5
33
|
|
|
6
|
-
そうしてから、{{form.icon}}ごと消さないと多分「現在:」みたいなのが残るので、
|
|
7
|
-
```
|
|
34
|
+
```
|
|
8
|
-
<div style="display:none;">
|
|
9
|
-
{{form.icon}}
|
|
10
|
-
</div>
|
|
11
|
-
```非表示にして、
|
|
12
|
-
```HTML
|
|
13
|
-
<img src="{{request.user.icon.url}}" alt="">
|
|
14
|
-
```これを重ねれば、現在の写真をクリックしたら、ファイルが開いて参照できるみたいになります。
|
|
15
|
-
写真を選択した瞬間、画像を変えるにはJavaScriptが必要です。
|
|
16
|
-
(短いコードでいけると思う)
|
5
修正
answer
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
そうしてから、{{form.icon}}ごと消さないと多分「現在:」みたいなのが残るので、
|
|
7
7
|
```HTML
|
|
8
|
-
<div style="
|
|
8
|
+
<div style="display:none;">
|
|
9
9
|
{{form.icon}}
|
|
10
10
|
</div>
|
|
11
11
|
```非表示にして、
|
4
修正
answer
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
そうしてから、{{form.icon}}ごと消さないと多分「現在:」みたいなのが残るので、
|
|
7
7
|
```HTML
|
|
8
|
-
<div style="opacity:0">
|
|
8
|
+
<div style="opacity:0;">
|
|
9
9
|
{{form.icon}}
|
|
10
10
|
</div>
|
|
11
11
|
```非表示にして、
|
3
修正
answer
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
そうしてから、{{form.icon}}ごと消さないと多分「現在:」みたいなのが残るので、
|
|
7
7
|
```HTML
|
|
8
|
-
<div style="
|
|
8
|
+
<div style="opacity:0">
|
|
9
9
|
{{form.icon}}
|
|
10
10
|
</div>
|
|
11
11
|
```非表示にして、
|
2
修正
answer
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
UpdateViewでは、デフォルト画像は表示されず、
|
|
1
|
+
UpdateViewでは、デフォルトでは画像は表示されず、
|
|
2
2
|
URLしか表示されません。
|
|
3
3
|
----追記欄----
|
|
4
4
|
> 個別でフォーム表示
|
1
修正
answer
CHANGED
|
@@ -1,2 +1,16 @@
|
|
|
1
1
|
UpdateViewでは、デフォルト画像は表示されず、
|
|
2
|
-
URLしか表示されません。
|
|
2
|
+
URLしか表示されません。
|
|
3
|
+
----追記欄----
|
|
4
|
+
> 個別でフォーム表示
|
|
5
|
+
|
|
6
|
+
そうしてから、{{form.icon}}ごと消さないと多分「現在:」みたいなのが残るので、
|
|
7
|
+
```HTML
|
|
8
|
+
<div style="display: none;">
|
|
9
|
+
{{form.icon}}
|
|
10
|
+
</div>
|
|
11
|
+
```非表示にして、
|
|
12
|
+
```HTML
|
|
13
|
+
<img src="{{request.user.icon.url}}" alt="">
|
|
14
|
+
```これを重ねれば、現在の写真をクリックしたら、ファイルが開いて参照できるみたいになります。
|
|
15
|
+
写真を選択した瞬間、画像を変えるにはJavaScriptが必要です。
|
|
16
|
+
(短いコードでいけると思う)
|