Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.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 用于用户登录/注册的Django模式-表单呈现问题_Javascript_Jquery_Django - Fatal编程技术网

Javascript 用于用户登录/注册的Django模式-表单呈现问题

Javascript 用于用户登录/注册的Django模式-表单呈现问题,javascript,jquery,django,Javascript,Jquery,Django,我正在尝试创建一个基于JS/Bootstrap的登录/注册模式: 我只是在寻找指导,因为我在模态上显示表单输入时遇到了问题。模态会在点击后弹出,但是表单输入不会出现 如果我访问accounts/sign_in或accounts/sign_up页面并单击其中一个按钮,那么我确实会得到带有表单输入的弹出窗口(大多数情况下) 因此,我想我一定是在登录表单视图中处理渲染不当了 我根据一些指导创建了这个“登录表单”视图 我的网址是: //urls.py app_name = "accounts" u

我正在尝试创建一个基于JS/Bootstrap的登录/注册模式:

我只是在寻找指导,因为我在模态上显示表单输入时遇到了问题。模态会在点击后弹出,但是表单输入不会出现

如果我访问accounts/sign_in或accounts/sign_up页面并单击其中一个按钮,那么我确实会得到带有表单输入的弹出窗口(大多数情况下)

因此,我想我一定是在登录表单视图中处理渲染不当了

我根据一些指导创建了这个“登录表单”视图

我的网址是:

//urls.py

app_name = "accounts"

urlpatterns = [
    url(r'sign_in/$', views.login_form, name='sign_in'),
    url(r'sign_up/$', views.login_form, name='sign_up'),
这是我的layout2.html文件中的相关模式代码:

 <div class="form loginBox">
                                <form method="POST" action="{% url 'accounts:sign_in' %}">
                                    {% csrf_token %}
                                    <input type="hidden" name="form_name" value="login_form">
                                    {{ login_form.as_p }}    
                                    <input type="submit" onclick="loginAjax()">
                                 </form>

                          </div>
                       </div>
                  </div>
                  <div class="box">
                      <div class="content registerBox" style="display:none;">
                       <div class="form">
                            <form method="POST" action="{% url 'accounts:sign_up' %}" html="{:multipart=>true}" data-remote="true" accept-charset="UTF-8">
                                    {% csrf_token %}
                                    <input type="hidden" name="form_name" value="signup_form">
                                    {{ signup_form.as_p }}    
                                    <input type="submit" onclick="loginAjax()">
                                 </form>
                          </div>
--------------查看最新信息---------------

以下是我单击“登录”时在主页上的外观:

这就是我进入帐户/登录并单击登录按钮时的情况:

更新这里是我的更新主视图,添加了

class Home(generic.TemplateView):
    model = Deal
    template_name = 'test.html'

    def get_context_data(self, **kwargs):
        context = super(Home, self).get_context_data(**kwargs)
        today = datetime.datetime.today()
        deals = Deal.objects.all()
        context['deals'] = deals.filter(Q(date_expires__gte=today))
        categories = Category.objects.all()
        context['categories'] = categories
        signup_form = UserCreationForm()  
        login_form = AuthenticationForm()   
        context["signup_form"] = signup_form
        context["login_form"] = login_form
        return context

问题是您正在将
def login_表单(请求):
函数附加到
sig_中的
注册视图中,而不是在主页中添加,它应该可以按照您的预期工作

url(r'^$', views.login_form, name='')
由于您已经有了视图
home
,只需添加到上下文中:

signup_form = UserCreationForm()  
login_form = AuthenticationForm()  
context["signup_form"] = signup_form
context["login_form"] = login_form

你能展示你得到了什么吗?你也尝试过不同的浏览器吗?只是发布了我看到的实际视图…并且在不同的浏览器(edge)中尝试过,看起来是一样的..好的,但是我已经有了一个不同的主页视图,它呈现了所有的主页内容。我该如何使其工作?在这种情况下,只需通过渲染表单即可。
layout2.html
是否与
home
页面的模板相同?请记住,在模板中添加{{login\u form.as\u p}}OK,仍然有点困惑(抱歉),但是的,my home.html只是扩展了layout2.html模板,以便包含模式代码。我有一个Home视图,它正在呈现Home.html模板——我应该如何准确地包含登录表单呢?如果您正在扩展
layout2.html
只需传递表单,就像
context={“signup\u form”:signup\u form,“login\u form”:login\u form}返回呈现(请求,'Home.html',context)
ok..如果我认为我理解正确,我只是将以前的登录表单视图代码全部移到了我的“主页”视图中。我在原始帖子的代码末尾粘贴了此更新。我还将模式表单中的操作更改为
{%url'home'%}
,不幸的是仍然存在相同的问题
url(r'^$', views.login_form, name='')
signup_form = UserCreationForm()  
login_form = AuthenticationForm()  
context["signup_form"] = signup_form
context["login_form"] = login_form