I have a project where I will be creating certain data models, and managing them. I also want to provide functionality to external clients to access and modify this database. So the question is around how to structure various components to achieve this. I have so far considered two options:
Option 1
Create a list of APIs using Django REST Framework, which is a separate Django project. Create another Django project which does not have any backend of its own, and the rendered templates make AJAX calls to the first project or using COREAPI, to fetch and modify data. Clients can interact with the first project, and make modifications.
Option 2
Create one Django project, which has the data models, as well as frontend templates. It also exposes certain endpoints using Django REST Framework, which can be accessed by clients for data modification and access.
Which option would you recommend?