Export Django view to static HTML files using Django API (i.e. not wget or other scraper)

StackOverflow https://stackoverflow.com/questions/19184521

Вопрос

I have several Django views that I want to export as a static HTML site (to host on AWS S3). The site doesn't use any authentication or dynamic features, so serving in static format is ideal.

Using Django StaticGenerator (original source) or wget -m seems like a fine solution, but they require I run my web server (even if it happens to just be manage.py runserver).

I would prefer to use the Django API to retrieve the view's HTML. For example:

  1. Initialize the request object with a non-logged-in user;
  2. Pass this to my view function/method;
  3. Do something with returned HTML
Это было полезно?

Решение

The easiest way is to use django test client

>>> from django.test import Client
>>> c = Client()
>>> response = c.get('/')
>>> response.content
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top