1from plain.views import View
2
3from .models import Pageview
4
5
6class TrackView(View):
7 def post(self) -> int:
8 data = self.request.json_data
9
10 try:
11 pageview = Pageview.create_from_request(
12 self.request,
13 url=data["url"],
14 title=data["title"],
15 referrer=data["referrer"],
16 timestamp=data["timestamp"],
17 )
18 except KeyError:
19 return 400
20
21 if pageview is None:
22 return 200
23
24 return 201