ich meinen alten Code aus Kolben sqlalchemyTypeerror: ungebundene Methode make_valid_name() muss mit Benutzerinstanz aufgerufen werden als erstes Argument (Unicode-Instanz statt bekam)
from flask.ext.sqlalchemy import SQLAlchemy
zu sqlalchemy.orm Migration - Sitzungs maker
from sqlalchemy.orm import sessionmaker
Modell
@staticmethod
class User(Base):
__tablename__ = 'user'
id = Column(Integer , primary_key=True)
name = Column(String(20) , unique=True, nullable=False)
.
.
.
def make_valid_name(name):
return re.sub('[^a-zA-Z0-9_\.]', '', name)
Formular
def validate(self):
.
.
.
if self.name.data != User.make_valid_name(self.name.data):
self.name.errors.append('Please use letters, numbers, dots and underscores only.')
return False
Während ein Aufruf der Methode self.validate machen() wirft folgende Fehler
TypeError: unbound method make_valid_name() must be called with User instance as first argument (got unicode instance instead)
Ich bin nicht sicher, was geändert werden muss, wie kann ich „self.name.data validieren "Von Felddaten
Jede Hilfe zu diesem wird groß sein.
Does '@ staticmethod' erscheint in dem Code, den Sie weggelassen haben? – dirn
ja, es ist eine statische Methode. – Pradeep