Django templates - split string to array

后端 未结 5 2080
借酒劲吻你
借酒劲吻你 2020-11-28 09:07

I have a model field, which stores a list of URLs (yeah, I know, that\'s wrong way) as url1\\nurl2\\nurl3<...>. I need to split the field into an array in

5条回答
  •  盖世英雄少女心
    2020-11-28 09:36

    Django intentionally leaves out many types of templatetags to discourage you from doing too much processing in the template. (Unfortunately, people usually just add these types of templatetags themselves.)

    This is a perfect example of something that should be in your model not your template.

    class Game(models.Model):
        ...
        def screenshots_as_list(self):
            return self.screenshots.split('\n')
    

    Then, in your template, you just do:

    {% for screen in game.screenshots_as_list %}
        {{ screen }}
    {% endfor %}

    Much more clear and much easier to work with.

提交回复
热议问题