отправить ajax запрос на получение и опубликовать в том же виде django - PullRequest
0 голосов
/ 09 июля 2020

у меня есть представление, которое включает GET и POST, но до того, как произошел метод POST Get,

, и это мое представление

def addNewNameInfo(request):
    qs = NameList.objects.values_list('name',flat=True)
    add_new_name_info =ListInfoForm()
    if request.is_ajax():
        names = request.GET.get('name')
        if names:
            lists = NameList.objects.get(name=names)
    
            if request.method == 'POST':
                add_new_name_info = ListInfoForm(request.POST)
                if add_new_name_info .is_valid():
                    obj = add_new_name_info .save(commit=False)
                    obj.admin = request.user
                    obj.name= name_info.name
                    obj.save()
                    messages.success(request,'created')
    return render(request,'myfolder/my_template.html',{'names':qs,'name_info':name_info,'add_new_name_info':add_new_name_info })

<form method='GET' class="ajax-request" data-url='/my/url/'>
   <select name="name" class="form-control" id="type">
      <option selected="true" disabled="disabled">names</option>
        {% for value in names %}
      <option  value="{{value}}">{{ value }}</option>
         {% endfor %}
     </select>
   <button type="submit">search</button>
 </form>
 <!--then -->
 <!--return some information about the selected name -->

мне нужно ajax запрос только для первой формы

<script>
    $(document).ready(function(){
        var $myForm = $('.ajax-request');
        $myForm.submit(function(event){
            event.preventDefault();
            var $formData = $myForm.serialize();
            var $thisUrl = $myForm.attr('data-url') || window.location.href;
            $.ajax({
                method:'GET',
                url:$thisUrl,
                data:$myForm,
                success: handleSuccess,
                error: handleError,
            });
            function handleSuccess(data){
                console.log(data);
            }
            function handleError(ThrowError){
                console.log(ThrowError);
            }
        });
    });
</script>

my urls.py

path('my/url', views.addNewNameInfo,name='add-new-info'),

я что-то пропустил или делаю что-то не так?

но это не работает и его код status: 404? я очень ценю вашу помощь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...