Задать вопрос
  • Как правильно собирается url django1.10?

    darqsat
    @darqsat
    PM
    Лучше конечно перейти на 2.0, там более не нужно использовать регулярки для фильтрации значений в урле. Выглидят секасно:
    path('user/<int:id>/albums/<int:album_id>', views.list_albums, name="list_albums")

    В принципе в 1.10 тоже самое только то что и вырезается при помощи регулярных выражений.

    Логика работы диспатчера примерно следующая:
    1. Веб сервер получает урл на который перешели (напр. 127.0.0.1:800/user/4/albums/12);
    2. Веб сервер вызывает функцию url_dispatcher и передает аргументом путь без айпи адресса;
    3. Диспатчер начинает идти циклом по твоему словарю url_patterns сверху вниз, и применять фильтр пока тот не будет True. Фильтр это то что идет первое, в твоем случае в 1.10 это регулярное выражение. И когда оно True, то происходит вызов функции view.NAME и передача в неё параметров из регулярки в виде аргументов.
    4. Вью получает аргументы и обьект request и далее по логике вещей, собирает ответ, достает темплейт и кладет туда контекст в виде словаря
    5. Ты уже в темплейте можешь гонять словарь циклом или напрямую упоминая его через {{ name }}

    P.S. то что в урле указано как name="list_albums' нужно для формирования ссылки на темплейте при помощи функции {% url 'list_albums' %}. Ты на темплейте можешь вставить ссылку вызвав её по имени которое ты вписал в name. Они рекомендуют это использовать что бы не формировать ссылку руками, так как в случае изменения урла тебе надо пройти по всем темплейтам и все везде поменять.

    И я хочу добавить что в джанго я сам нубас, и пока я не начал читать документацию я тоже как ты гуглил и искал ответы. Это очень не эффективно для развития. Лучше следовать гайду и понимать почему оно так работает. Например, мне понравился гайд на djangogirls, но щас с выходом 2.0 он устарел и в документации по 2.0 есть неплохой Tutorial хотя и не полный. Там непонятно что делать с авторизацией.
    Ответ написан
    Комментировать
  • Как правильно должен располагаться VPN сервер,чтоб отправлять через него запросы?

    gbg
    @gbg Куратор тега Сетевое администрирование
    Любые ответы на любые вопросы
    Да, будет.

    Другое дело, что в некоторых случаях, вам не нужен VPN, достаточно HTTPS.

    От чего HTTPS не защищает - он не защищает от того, что все, кто слушают трафик, будут знать, какой сайт вы открываете, но не смогут узнать, что вы от этого сайта получили / передали.
    Ответ написан
    3 комментария
  • Как правильно должен располагаться VPN сервер,чтоб отправлять через него запросы?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    да

    OpenVPN поднимаешь на сервере и клиент настраиваешь у себя

    еще быстрее - вот тут, но провайдеры не любят такой VPN
    Ответ написан
    4 комментария