0
私は、データを検証し、重要な値の場合はエラーメッセージを出すトリガーを使ってMySQLにテーブルを持っています。ここでDjangoは、MySQLトリガーからのエラーメッセージを処理することによって処理します。OperationalError
は、トリガコードです:今
CREATE TRIGGER `supermarkets_schema`.`legal_entities_BEFORE_INSERT`
BEFORE INSERT ON `supermarkets_schema`.`legal_entities`
FOR EACH ROW
BEGIN
DECLARE parent_inn, parent_ogrn, parent_temp_leg_address VARCHAR(300);
IF some_condition THEN
SIGNAL sqlstate '45001' set message_text = 'My error msg'
END
、私はジャンゴでこのエラーメッセージを取得し、Djangoのテンプレートページ上に表示します。
import django.db
try:
legal_entities_details_instance.legal_entities = legal_entities_form.save()
except OperationalError as e:
return render_to_response("error_handling/main.html", {"message": e.message})
しかし残念ながら、私は、Djangoはそれを正しく処理するために作ることができない。
は、ここで私がやろうものです。 OperationalErrorの誤ったパッケージをインポートするために起こりますか?私を助けてください!
今のところ問題は、何らかの理由でメッセージが空の文字列になってしまうことです。 –
'e.args'を印刷して、例外オブジェクトでどの引数が指定されているのかを確認してください。そのうちの1人は、MySQLから渡されたメッセージテキストを含むことを願っています。 – solarissmoke