0

ユーザーがDjangoで画像を評価できるようにするスライダーバーを作成しようとしていますが、Django-Floppyformsに出くわしました

ただし、スライダーウィジェットの例を操作しようとすると問題が発生します

PyPi インストール ガイドラインに従って、コマンドを使用して pip 経由で仮想環境にインストールしましたpip install -U django-floppyforms。Apip freezeは私にくれます

Django==1.6.2
django-floppyforms==1.2.0

INSTALLED_APPS次に、それを自分の settings.py に追加しました

INSTALLED_APPS = (
    'django.contrib.admin',
    ...

    'django.contrib.flatpages',
    'polls',
    'survey',
    'floppyforms',
)

次に、models.py および views.py と同じレベルで floppyforms.py ファイルを作成し、次のようにコピーしました。

import floppyforms as forms


class Slider(forms.RangeInput):
    min = 5
    max = 20
    step = 5
    template_name = 'slider.html'

    class Media:
        js = (
            'js/jquery.min.js',
            'js/jquery-ui.min.js',
        )
        css = {
            'all': (
                'css/jquery-ui.css',
            )
        }


class SlideForm(forms.Form):
    num = forms.IntegerField(widget=Slider)

    def clean_num(self):
        num = self.cleaned_data['num']
        if not 5 <= num <= 20:
            raise forms.ValidationError("Enter a value between 5 and 20")

        if not num % 5 == 0:
            raise forms.ValidationError("Enter a multiple of 5")
        return num

ただし、これを行うとすぐに、既存のアプリケーションが機能しなくなり、エラーが発生します

Exception Value:    'module' object has no attribute 'RangeInput'

何か案は?私はエラーをグーグルで調べましたが、それについて多くを得ることができないようです。私はPython 2.7.5を実行しています

4

1 に答える 1

2

floppyforms.py問題は、モジュールと同じ名前のファイルに名前を付けたことです。

forms.pyフォームの django で通常行われているファイルの名前を変更します。

于 2014-07-02T15:41:39.477 に答える