小编Ev.*_*Ev.的帖子

打开时,将焦点设置为bootstrap模式内的按钮

我想要实现以下目标:

  1. 页面加载时,焦点将转到表单中的第一个元素.
  2. 在表单上按下按钮时,会出现一个模态确认,焦点应位于模态对话框内的"继续"按钮上.

我设法使第一个工作,但第二个我不知道为什么它不工作.以下是我的代码.

HTML

<form method="post" {% if action %} action="{{ action }}" {% endif %} role="form" enctype="multipart/form-data">
<!-- Modal -->
  <div class="modal fade" id="confirmationModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
    <div class="modal-dialog" role="document">
      <div class="modal-content">
        <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" id="myModalLabel">Confirmation</h4>
        </div>
        <div class="modal-body">
           {{ confirm | default: "Would you like to proceed?" }}
        </div>
        <div class="modal-footer">
          <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
          <button type="submit" id="submit-main-form" class="btn btn-primary">
              <i class="fa fa-save"></i> {{ submit_text | default: …
Run Code Online (Sandbox Code Playgroud)

javascript jquery bootstrap-modal

2
推荐指数
1
解决办法
7560
查看次数

如何使用对象实例化 FormSet

我尝试在Django Docs中查找是否可以找到与 ModelForm 中的实例类似的参数,但无法使其工作。

class RequiredFormSet(BaseFormSet):
    def __init__(self, *args, **kwargs):
        super(RequiredFormSet, self).__init__(*args, **kwargs)
        for form in self.forms:
            form.empty_permitted = False

OfferItemFormSet = formset_factory(OfferItemForm, formset=RequiredFormSet)
Run Code Online (Sandbox Code Playgroud)

表格.py

class OfferItemForm(ModelForm):

class Meta:
    model = OfferItem
    exclude = ('offer', 'item_code', 'type')
    [...]
Run Code Online (Sandbox Code Playgroud)

视图.py

i = OfferItem.objects.filter(offer=o).values()
item_formset = OfferItemFormSet(queryset=i)
Run Code Online (Sandbox Code Playgroud)

我总是__init__() got an unexpected keyword argument 'queryset'。我尝试从 formset_factory 更改为 modelformset_factory 但仍然存在同样的问题。

Traceback:
File "/Library/Python/2.7/site-packages/Django-1.8.3-py2.7.egg/django/core/handlers/base.py" in get_response
  132.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/Library/Python/2.7/site-packages/Django-1.8.3-py2.7.egg/django/contrib/auth/decorators.py" in _wrapped_view
  22.                 return view_func(request, *args, **kwargs) …
Run Code Online (Sandbox Code Playgroud)

python django

1
推荐指数
1
解决办法
1784
查看次数

'str'对象在password_reset,第185行中无法调用/django/contrib/auth/views.py

我正在尝试自定义PasswordResetForm形式django.contrib.auth.views.password_reset.我从Django的网站或一个GitHub复制代码,并将其放在我的forms.py中.我更改了代码:

forms.py

email = forms.EmailField(label=_("Email"), max_length=254)
Run Code Online (Sandbox Code Playgroud)

email = forms.EmailField(label=_("Email"), max_length=254, widget=forms.EmailInput(attrs={'placeholder': 'E-mail'}))
Run Code Online (Sandbox Code Playgroud)

并保持其余PasswordResetForm代码完好无损.

url.py

url(r'^password/reset/$','django.contrib.auth.views.password_reset', {'post_reset_redirect': '/password/reset/done/', 'password_reset_form': 'forms.PasswordResetForm',}, name="password_reset"),
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

Exception Location: /Library/Python/2.7/site-packages/Django-1.8.3-py2.7.egg/django/contrib/auth/views.py in password_reset, line 185

185. form = password_reset_form() 
Run Code Online (Sandbox Code Playgroud)

我没有这个定制工作.我需要定制,因为我想PlaceHolder在现场.如果我删除网址中的密钥,它的工作原理.

python django

1
推荐指数
1
解决办法
87
查看次数

如何重写 __init__ 添加实例 forms.Form Django

我想向我的 forms.Form 添加一个实例参数,这样我可以在视图中初始化它并在我的表单中获得预期的结果。我知道我可以使用'initial',但我想尝试一些不同的东西。

视图.py

city_form = CityForm(instance=user.profile.city)
Run Code Online (Sandbox Code Playgroud)

表格.py

class CityForm(forms.Form):
    post_nr = forms.CharField(max_length=5, widget=forms.TextInput(attrs={'placeholder': 'Post nr.'}))
    city = forms.CharField(required=False, max_length=30, widget=forms.TextInput(attrs={'placeholder': 'By', 'readonly': True}))

    class Meta:
        model = City

    def __init__(self, *args, **kwargs):
        self.instance = kwargs.pop('instance', None)

        if self.instance:
            self.fields['post_nr'] = self.instance.post_code
            self.fields['city'] = self.instance.name

        super(CityForm, self).__init__(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)

引用的实例将是一个 City 对象,来自我的 City 类,它具有我上面指定的变量。

但我得到:

“CityForm”对象没有属性“field”

python django

1
推荐指数
1
解决办法
5797
查看次数

如何保存电子邮件等于用户名 Allauth 社交媒体帐户 Django

我设法设置 allauth 来处理我的项目并使用社交媒体登录。不过我想知道他们是否有任何选项可以将获取 Facebook 的电子邮件设置为用户名。我阅读了他们的文档,但在变量中看不到任何内容。

我找到了这个链接,但是他们改变了 Django 的核心文件。我希望能找到更合适的东西。

我当前的配置:

ACCOUNT_USER_MODEL_EMAIL_FIELD = 'email'
ACCOUNT_USER_MODEL_USERNAME_FIELD = 'email'
SOCIALACCOUNT_QUERY_EMAIL = True
SOCIALACCOUNT_EMAIL_REQUIRED = True
Run Code Online (Sandbox Code Playgroud)

另外,是否可以仅使用 Allauth 的社交媒体登录/创建?我可以看到,如果您访问 localhost/accounts/create/ (或类似的网址),则可以创建一个帐户。我不需要它,因为我有自己的帐户创建页面。

django django-allauth

1
推荐指数
1
解决办法
803
查看次数