teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

追記

2021/09/24 16:15

投稿

itagagaki
itagagaki

スコア8402

answer CHANGED
@@ -44,4 +44,44 @@
44
44
  ```
45
45
  となっています。
46
46
 
47
- 以上から、質問者の`var[0]`の値は、やはり、ここでの`var2`の値となっている、つまり改行文字ではなく`\`と`n`の2文字になってしまっていると考えられます。
47
+ 以上から、質問者の`var[0]`の値は、やはり、ここでの`var2`の値となっている、つまり改行文字ではなく`\`と`n`の2文字になってしまっていると考えられます。
48
+
49
+ ---
50
+
51
+ 参考までに、`|linebreaks`を付けないと、以下のようになります。
52
+
53
+ Template
54
+ ```HTML
55
+ <html>
56
+ <head>
57
+ <title>test</title>
58
+ </head>
59
+ <body>
60
+ <div>{{var1 |safe}}</div>
61
+ <div>{{var2 |safe}}</div>
62
+ </body>
63
+ </html>
64
+ ```
65
+
66
+ 結果
67
+
68
+ これは**サンプル**です. これはsampleです.
69
+ これは**サンプル**です.\nこれはsampleです.
70
+
71
+ ページのソース
72
+ ```HTML
73
+
74
+ <html>
75
+ <head>
76
+ <title>test</title>
77
+ </head>
78
+ <body>
79
+ <div>これは<b>サンプル</b>です.
80
+ これはsampleです.</div>
81
+ <div>これは<b>サンプル</b>です.\nこれはsampleです.</div>
82
+ </body>
83
+ </html>
84
+ ```
85
+
86
+ `var1`には改行が入っているのがわかりますよね。
87
+ `var2`は当然`\n`の2文字のままです。

1

typo

2021/09/24 16:15

投稿

itagagaki
itagagaki

スコア8402

answer CHANGED
@@ -5,7 +5,7 @@
5
5
  def index_template(request):
6
6
  data = {
7
7
  'var1': "これは<b>サンプル</b>です.\nこれはsampleです.",
8
- 'var2': r"これは<b>サンプル</b>ですnこれはsampleです."
8
+ 'var2': r"これは<b>サンプル</b>です.\nこれはsampleです."
9
9
  }
10
10
  return render(request, 'index.html', data)
11
11
  ```