Если вы имеете в виду, что вы хотите, чтобы эти вычисления выполнялись в самом пути urls.py, нет, вы не можете. URL-путь связан с одной функцией представления (или View.as_view ()). Они применяют сопоставление с образцом только для самого URL.
Однако вы, безусловно, можете связать его с первой функцией представления, которая читает заголовок и отправляет его в нужное представление приложения на основе его содержимого.
Например, в urls.py
url_pattern = [
...
path('/users/<str:username>', views.user_dispatch_view(), name='user-detail'),
]
В app1.views.py
from app2.views import json_view
def html_view(request, **kwargs):
'''
Do your stuff, or even use a generic view instead,
calling it with YourGenericView.as_view(request, **kwargs)
'''
def user_dispatch_view(request, **kwargs):
if request.Meta.get('Accept') == application/activity+json:
return json_view(request, **kwargs)
return http_view(request, **kwargs)