나는 다음과 같은 클래스가 :WTForms-Alchemy에 대해 unique = True를 어떻게 지정합니까?
class CloakerForm(ModelForm):
class Meta:
model = Cloaker
나는 다음과 같은 한 : WTForm에 의해 생성 된 형태로
class Cloaker(db.Model):
id = db.Column(db.Integer, primary_key=True)
domain = db.Column(db.String(32), unique=True, nullable=False, info={
'description': 'Raw Domain Only (no www). i.e. hello.com',
'validators': raw_domain_validator,
})
(도메인에 대한 독특한 = 진정한 주)
을 이 모델의 CRUD를 처리하는 코드 :
@cloaker_bp.route('/new/', methods=['GET', 'POST'])
@cloaker_bp.route('/<cloaker_id>/', methods=['GET', 'POST'])
def cloaker(cloaker_id=None):
cloaker = Cloaker.query.get(cloaker_id) if cloaker_id else Cloaker()
if request.method == 'GET':
form = CloakerForm(obj=cloaker)
form.populate_obj(cloaker)
else:
form = CloakerForm(request.form)
if form.validate():
form.populate_obj(cloaker)
db.session.add(cloaker)
db.session.commit()
return redirect(url_for('.list_cloakers'))
return render_template('cloaker/single.html', form=form, cloaker=cloaker)
개체를 업데이트 할 때 도메인에 지속적으로 Already exists.
이 표시됩니다. 내가 wtforms - 연금술의 웹 사이트에 기존 개체와 독특한 검사기를 사용 를 수행 할 때
:
...(from the CRUD view)...
else:
form = CloakerForm(obj=cloaker)
#form = CloakerForm(request.form)
form.populate_obj(cloaker)
if form.validate():
db.session.add(cloaker)
db.session.commit()
을 나는 도메인에 대한 This field is required.
을 얻고있다. WTForms-Alchemy가 권장 사항을 따르면 request.form에서 데이터를 가져 오는 방식을 이해할 수 없습니다.