Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 应为str实例,找到BoundField(Django) Django版本:2.0 python:3.7 jquery:3.3.1 引导:3.3.7_Javascript_Python_Html_Django_Django Templates - Fatal编程技术网

Javascript 应为str实例,找到BoundField(Django) Django版本:2.0 python:3.7 jquery:3.3.1 引导:3.3.7

Javascript 应为str实例,找到BoundField(Django) Django版本:2.0 python:3.7 jquery:3.3.1 引导:3.3.7,javascript,python,html,django,django-templates,Javascript,Python,Html,Django,Django Templates,我正在django表单中实现ajax。为此,我遵循了教程。然而,当我点击“新书”按钮或“更新”按钮时,我遇到了一个奇怪的错误 应为str实例,找到了BoundField 不打开模式,只显示一小行 完全回溯 观点 模板 partial_book_form.html book_list.html partial_book_create.html 部分更新表单.html 通过更新django小部件调整库解决了这个问题 通过更新django小部件调整库解决了这个问题 在从django 1.11更新到2.

我正在django表单中实现ajax。为此,我遵循了教程。然而,当我点击“新书”按钮或“更新”按钮时,我遇到了一个奇怪的错误

应为str实例,找到了BoundField

不打开模式,只显示一小行

完全回溯

观点

模板

partial_book_form.html

book_list.html

partial_book_create.html

部分更新表单.html


通过更新django小部件调整库解决了这个问题


通过更新django小部件调整库解决了这个问题


在从django 1.11更新到2.0的过程中,我遇到了这种情况。我更新到django widget调整版本1.4.5,该版本是在帖子创建后发布的,它修复了这个问题。更新后,它可以正常工作。当我从django 1.11更新到2.0时,它发生在我身上。我更新了django widget tweaks版本1.4.5,该版本是在帖子创建后发布的,它解决了这个问题。
Request Method: GET
Request URL: http://127.0.0.1:8000/users/book/create/

Django Version: 2.1.2
Python Version: 3.7.2
Installed Applications:
['users.apps.UsersConfig',
 'django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'bootstrap_modal_forms',
 'main',
 'first_app',
 'campaign',
 'invoice',
 'taggit',
 'taggit_selectize',
 'rest_framework',
 'django_filters',
 'django_extensions',
 'shop',
 'search',
 'cart',
 'orders',
 'widget_tweaks']
Installed Middleware:
('whitenoise.middleware.WhiteNoiseMiddleware',
 'django.middleware.security.SecurityMiddleware',
 'whitenoise.middleware.WhiteNoiseMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware')


Template error:
In template C:\Users\HP\Desktop\Crowdsocial\templates\partial_book_form.html, error at line 3
   sequence item 7: expected str instance, BoundField found
   1 : {% load widget_tweaks %}
   2 : 
   3 :  {% for field in form %} 
   4 :   <div class="form-group{% if field.errors %} has-error{% endif %}">
   5 :     <label for="{{ field.id_for_label }}">{{ field.label }}</label>
   6 :     {% render_field field class="form-control" %}
   7 :     {% for error in field.errors %}
   8 :       <p class="help-block">{{ error }}</p>
   9 :     {% endfor %}
   10 :   </div>
   11 : {% endfor %}
   12 : 

Traceback:

File "C:\python3\Lib\site-packages\django\core\handlers\exception.py" in inner
  34.             response = get_response(request)

File "C:\python3\Lib\site-packages\django\core\handlers\base.py" in _get_response
  126.                 response = self.process_exception_by_middleware(e, request)

File "C:\python3\Lib\site-packages\django\core\handlers\base.py" in _get_response
  124.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "C:\Users\HP\Desktop\Crowdsocial\users\views.py" in create_book
  194.     return save_book_form(request, form, 'partial_book_create.html')

File "C:\Users\HP\Desktop\Crowdsocial\users\views.py" in save_book_form
  178.     data['html_form'] = render_to_string(template_name, context, request=request)

File "C:\python3\Lib\site-packages\django\template\loader.py" in render_to_string
  62.     return template.render(context, request)

File "C:\python3\Lib\site-packages\django\template\backends\django.py" in render
  61.             return self.template.render(context)

File "C:\python3\Lib\site-packages\django\template\base.py" in render
  171.                     return self._render(context)

File "C:\python3\Lib\site-packages\django\template\base.py" in _render
  163.         return self.nodelist.render(context)

File "C:\python3\Lib\site-packages\django\template\base.py" in render
  937.                 bit = node.render_annotated(context)

File "C:\python3\Lib\site-packages\django\template\base.py" in render_annotated
  904.             return self.render(context)

File "C:\python3\Lib\site-packages\django\template\loader_tags.py" in render
  188.             return template.render(context)

File "C:\python3\Lib\site-packages\django\template\base.py" in render
  173.                 return self._render(context)

File "C:\python3\Lib\site-packages\django\template\base.py" in _render
  163.         return self.nodelist.render(context)

File "C:\python3\Lib\site-packages\django\template\base.py" in render
  937.                 bit = node.render_annotated(context)

File
urlpatterns = [
    path('book_list/', views.book_list, name='book_list'),
    path('book/create/', views.create_book, name='book_create'),
    path('<int:pk>/book/update/', views.book_update, name='book_update'),
    path('<int:pk>/book/delete/', views.book_delete, name='book_delete'),
]
class EducationForm(forms.ModelForm):

    class Meta:
        model = Education

        fields = ['degree','school','edu_start_date','edu_end_date']
def save_book_form(request, form, template_name):
    data = dict()
    if request.method == 'POST':
        if form.is_valid():
            form.save()
            data['form_is_valid'] = True
            books = Education.objects.all()
            data['html_book_list'] = render_to_string('profile_settings.html', request, {
                'books': books
            })
        else:
            data['form_is_valid'] = False
    context = {'form': form}
    data['html_form'] = render_to_string(template_name, context, request=request)
    return JsonResponse(data)

def create_book(request):
    if request.method == 'POST':
        form = EducationForm(request.POST)
    else:
        form = EducationForm()
    return save_book_form(request, form, 'partial_book_create.html')

def book_list(request):
    books = Education.objects.all()
    return render(request, 'book_list.html', {'books': books})
{% load widget_tweaks %}

{% for field in form %}
  <div class="form-group{% if field.errors %} has-error{% endif %}">
    <label for="{{ field.id_for_label }}">{{ field.label }}</label>
    {% render_field field class="form-control" %}
    {% for error in field.errors %}
      <p class="help-block">{{ error }}</p>
    {% endfor %}
  </div>
{% endfor %}
{% extends 'base.html' %}

{% load static %}

{% block javascript %}
  <script src="{% static 'books/js/books.js' %}"></script>
{% endblock %}

{% block content %}
  <h1 class="page-header">Books</h1>

  <p>
    <button type="button" class="btn btn-primary js-create-book" data-url="{% url 'users:book_create' %}">
      <span class="glyphicon glyphicon-plus"></span>
      New book
    </button>
  </p>

  <table class="table" id="book-table">
    <thead>
      <tr>
        <th>#</th>
        <th>Degree</th>
        <th>School</th>
        <th>Start Date</th>
        <th>End date</th>
      </tr>
    </thead>
    <tbody>
      {% include 'partial_book_list.html' %}
    </tbody>
  </table>

  <div class="modal fade" id="modal-book">
    <div class="modal-dialog">
      <div class="modal-content">

      </div>
    </div>
  </div>
{% endblock %}
<form method="post" action="{% url 'users:book_create' %}" class="js-book-create-form">
  {% csrf_token %}
  <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
      <span aria-hidden="true">&times;</span>
    </button>
    <h4 class="modal-title">Create a new book</h4>
  </div>
  <div class="modal-body">
    {% include 'partial_book_form.html' %}
  </div>
  <div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
    <button type="submit" class="btn btn-primary">Create book</button>
  </div>
</form>
<form method="post" action="{% url 'users:book_update' form.instance.pk %}" class="js-book-update-form">
  {% csrf_token %}
  <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
      <span aria-hidden="true">&times;</span>
    </button>
    <h4 class="modal-title">Update book</h4>
  </div>
  <div class="modal-body">
    {% include 'partial_book_form.html' %}
  </div>
  <div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
    <button type="submit" class="btn btn-primary">Update book</button>
  </div>
</form>