NSProject
Наурыз 31, 2023, 12:55 Т.Қ.

Проверка комментария принадлежит он пользователю или нет DRF (Django Rest Framework)

drf, Django

Здравствуйте!
Сегодня я столкнулся с такой проблеммой. Существует модель комметариев. Где их соответственно достаточное количество. Все они выводятся при помощи запроса ajax (axios). Так как они выводятся при помощи JavaScript я получается не могу проверить пользователя обычным способом.
И само собой с DRF не так сильно дружу. По этому хотелось бы узнать как проверить пользователя и решить может он редактировать свой комментарий или не может потому что это не его комм.

1

Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!

1
NSProject
  • Сәуір 4, 2023, 3:47 Т.Қ.
  • (өңделген)
  • Жауап шешім ретінде белгіленді.

Прошло уже несколько дней и написано столько строк кода что лень считать сколько. А так же множество костылей.
Изначально я решил проверять может ли пользователь редактировать свой комментарий. И для этого пришлось передать ID текущего пользователя.
И тут вариантов как я увидел 2. Первый прописать в род.шаблоне

  1. <script>
  2. const user_id = {{ request.user.id}}
  3. </script>

Либо же передавать это всё в через сериализатора и тд. Выходит как то многовато. И уже в js городить огород типа

  1. item = ""
  2. for(let i=0; list.lenght < i;i++) {
  3. item += 'code html'
  4. if(list[i].user.id == user_id) {
  5. item += 'code html'
  6. }
  7. item += 'code html'
  8. commentList.innerHTML = item

Получается много html кода в js. Не есть хорошо.
И тут я вспомнил о render_to_response Django. Но мне не хотелось отказываться от Drf. И так вышло что углубившись в доку увидел что можно отдавать не только Json объект но и html. И всё стало проще, намного проще. Всё проверки делаются в шаблоне. Js избавляется от html. С телефона всё описывать просто невозможно ((
Кароче проблема решена и точка

    Пікірлер

    Тек рұқсаты бар пайдаланушылар ғана пікір қалдыра алады.
    Кіріңіз немесе Тіркеліңіз