Google App Engine数据存储区多行条目未在HTML中显示为多行

时间:2011-04-12 09:45:52

标签: python google-app-engine multiline

以Google App Store留言板演示为例,当输入多行并存储时,当读回并显示时,它会出现在一行中。
我们怎样才能让它在最初输入的过程中显示出多条线?

databasemodel是这样的:

class Greeting(db.Model):
    author = db.UserProperty()
    content = db.StringProperty(multiline=True)
    date = db.DateTimeProperty(auto_now_add=True)

提交表格是这样的:

self.response.out.write("""
          <form action="/sign" method="post">
            <div><textarea name="content" rows="3" cols="60"></textarea></div>
            <div><input type="submit" value="Sign Guestbook"></div>
          </form>
        </body>
      </html>""")

1 个答案:

答案 0 :(得分:8)

Html会忽略EOL特殊字符,例如\r\n\n

以下是一些选项:

  1. 使用正确的html <br>标记

  2. 替换特殊字符
  3. 将多行文字换入<pre>代码

  4. 如果您使用的是网络应用模板,请按照 @wooble

  5. 的建议尝试使用{{greeting.content|linebreaks}}
  6. 按照 @Nick (示例here

  7. 的建议在CSS中设置white-space:pre