Он показывает: Поле 'id' ожидало число, но получило ''.
Когда я отправляю, появляется эта ошибка.
views.py:
class userINFOupdate(View):
def get(self,request):
userid = request.GET.get("user_up_id")
username = request.GET.get('user_up_username')
email = request.GET.get('user_up_email')
phone = request.GET.get('user_up_phoneNumber')
address = request.GET.get('user_up_address')
obj = AJAXCRUD.objects.get(id=userid)
print(userid)
Шаблон:
<input type="text" hidden name="user_up_id" id="user_hid_id" class="user_hidden_id">
urls.py:
path('userINFOupdate/', views.userINFOupdate.as_view(), name="userINFOupdate")
Вы принимаете user_up_id как строку. Вы должны сначала преобразовать переменную в int в файле views.py.
userid = int(request.GET.get("user_up_id"))
Я исправил эту ошибку, сделав следующее:
- Удалили все файлы миграции, кроме 0001_initial.py
- Создали новую миграцию с помощью => python manage.py makemigrations
- Зафиксировали новую миграцию в базе данных => python manage.py migrate.
В моем случае ошибка возникала потому, что приложение запускало старую миграцию, которая и вызывала эту ошибку. Надеюсь, это сработает и для вас 🤗