我想知道是否有可能实现一个默认的SQLAlchemy模型类,该类为其子类提供基本的CRUD功能。我想使用这个基类来避免不同数据库模型之间的代码重复。在
这种功能的一个例子是在数据库中创建(并保存)相应模型的实例。我知道,为了遵守原子性原则,这种方法只能用于不相互依赖的交易。有没有什么内置的机制或解决方法可以做到这一点?在
下面是一个显然行不通的例子(它的唯一目的是让大家了解这个想法):
import flask
import flask_sqlalchemy
import sqlalchemy
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
# app.config['SQLALCHEMY_DATABASE_URI'] = ...
db = SQLAlchemy(app)
class DefaultModel(db.Model):
def create(self, **attributes):
try:
# should be considered pseudocode
instance = self._init_(attributes)
db.session.add(instance)
db.session.commit()
return instance
except sqlalchemy.exc.SQLAlchemyError:
db.session.rollback()
return None
class MyModel(DefaultModel):
__tablename__ = 'mytable'
id = db.Column(db.BigInteger(), primary_key=True)
# ...
由于DefaultModel类中没有主键属性定义,因此引发以下异常:
^{pr2}$
第一件事是基于你的帖子,你没有把插件的版本固定在你自己的版本中,这意味着Maven自己负责它,它使用Maven自己定义的版本,你可以在以下文档中阅读:
这意味着,如果您更改Maven版本,那么将要使用的插件的版本将发生更改。因此,通过公司pom中的插件管理来定义所使用的插件版本是非常必要的
此外,您的消息告诉我,您在访问内部存储库管理器时似乎遇到了一些问题,因为它无法下载需要解决的工件
更新:(缺少maven clean插件)
相关问题 更多 >
编程相关推荐