尝试添加新事件时收到错误:
InterfaceError: (sqlite3.InterfaceError) Error binding parameter 7 - probably unsupported type. [SQL: u'INSERT INTO events (name, city, location, description, sport, starting, ending, price, creator_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)'] [parameters: (u'My Event', u'Milan', u'Some Description', u'123 My Location', u'Football/Soccer', '2018-01-01 10:10:00.000000', '2018-01-01 17:00:00.000000', Decimal('0.00'), 1)]
我的活动模特:
class Event(db.Model):
__tablename__ = "events"
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(60))
city = db.Column(db.String(60))
location = db.Column(db.String(60))
description = db.Column(db.Text())
sport = db.Column(db.String(60))
starting = db.Column(db.DateTime)
ending = db.Column(db.DateTime)
price = db.Column(db.Integer)
creator_id = db.Column(db.Integer, db.ForeignKey("users.id"))
creator = db.relationship("User", backref="created_events")
attendees = db.relationship("User", secondary=association_table,
back_populates="joined_events")
comments = db.relationship("Comment")
def __repr__(self):
return "<Event: {}".format(self.id)
我的添加活动表格:
class EventForm(FlaskForm):
name = StringField(validators=[DataRequired()])
description = TextAreaField()
city = SelectField(choices=CITIES, validators=[DataRequired()])
location = StringField(validators=[DataRequired()])
sport = SelectField(choices=SPORTS, validators=[DataRequired()])
start_date = DateField(validators=[DataRequired()])
start_time = TimeField(validators=[DataRequired()])
end_date = DateField(validators=[DataRequired()])
end_time = TimeField(validators=[DataRequired()])
price = DecimalField('Price (Euros)', default=0)
submit = SubmitField()
我的添加活动视图:
def add_event():
form = EventForm()
if form.validate_on_submit():
starting = datetime.datetime.combine(form.start_date.data,
form.start_time.data)
ending = datetime.datetime.combine(form.end_date.data,
form.end_time.data)
event = Event(name=form.name.data,
sport=form.sport.data,
description=form.description.data,
starting=starting,
ending=ending,
location=form.location.data,
city=form.city.data,
price=form.price.data,
creator_id=current_user.id,
creator=current_user)
# add event to the database
db.session.add(event)
db.session.commit()
flash('You have successfully added a new event.')
# redirect to event page
return redirect(url_for('events.list_events'))
我不知道为什么我会收到错误,因为&#34;结束&#34;参数是DateTime值。我错过了什么?