2

Djangoは初めてなので、次のことを達成する方法がわかりません...

私はこの正規表現を持っています

"@£$¥èéùìòÇ\fØø\nÅåΔ_ΦΓΛΩΠΨΣΘΞÆæßÉ !\"#¤%&'()*+,-./[0-9]:;<=>\?¡[A-Z]ÄÖÑܧ¿[a-z]äöñüà\^\{\}\[~\]\|€"

私はこの機能を持っています:

def validate_GSM_characters(value):
    """ Raise a ValidationError if the value contains any values not within
        the GSM character set.
    """
    msg = u"Invalid characters."

    raise ValidationError(msg)

現時点では何もしませんが、Django/Python で値を確認できる正規表現関数を作成する方法を知る必要があります。Google 検索を行ったところ、モデルの検証に関する記事しか見つかりませんでした。

4

1 に答える 1

2

reモジュールで式を使用するだけです:

import re

yourrule = re.compile(r"@£$¥èéùìòÇ\fØø\nÅåΔ_ΦΓΛΩΠΨΣΘΞÆæßÉ !\"#¤%&'()*+,-./[0-9]:;<=>\?¡[A-Z]ÄÖÑܧ¿[a-z]äöñüà\^\{\}\[~\]\|€")

def validate_GSM_characters(value):
    """ Raise a ValidationError if the value contains any values not within
        the GSM character set.
    """
    if not yourrule.search(value):
        msg = u"Invalid characters."

        raise ValidationError(msg)

RegexValidator;を使用することもできます。式とメッセージを渡すだけで、上記の関数の代わりにそれを使用できます。

于 2013-04-07T17:41:53.490 に答える