Database 如何做",;使用历史记录表进行版本控制';在炼金术中。最好有一些代码示例

Database 如何做",;使用历史记录表进行版本控制';在炼金术中。最好有一些代码示例,database,python-2.7,sqlalchemy,flask-sqlalchemy,database-versioning,Database,Python 2.7,Sqlalchemy,Flask Sqlalchemy,Database Versioning,我的模型是由postgresql之上的炼金术制成的。我想跟踪我的模型所做的更改 我有一张员工表: class Employee(db.Model): __tablename__ = 'employees' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(60)) job_title = db.Column(db.String(60)) job_

我的模型是由postgresql之上的炼金术制成的。我想跟踪我的模型所做的更改

我有一张员工表:

class Employee(db.Model):
__tablename__ = 'employees'

id            = db.Column(db.Integer, primary_key=True)
name          = db.Column(db.String(60))
job_title         = db.Column(db.String(60))
job_type      = db.Column(db.String(60))  # teaching, IT, manager,  
job_location  = db.Column(db.String(60)) 
salary        = db.Column(db.Numeric(15,2)) 
员工特定职称的工资从2014年12月的30k增加到35k,到2016年1月的40k

在我的应用程序的另一部分中,在计算收入和资产负债表时,公式中使用了上述
employees.salary
。因此,我应该能够使用旧工资30k进行任何计算,包括2014年12月之前的日期,以及2016年1月之前的35k。非常感谢您提供与本示例相关的任何详细答案和代码,谢谢


我一直在寻找如何做到这一点,到处都没有运气

这个问题太宽泛了。这将需要设计数据库表、查询和代码来支持它。这不是几个段落可以很好地涵盖的内容。你不能在互联网上找到所有内容的完整教程。您必须能够将您的知识拼凑在一起,自己创建更大的解决方案。这也是一个“给我代码”的问题,所以也是-1。我没想到会有人给我完整的代码。但是,当我问一个具体的不存在的问题时,无论有没有代码,答案都是合理的。忘了我的例子吧。在其他SQL技术中创建“使用历史表进行版本控制”的指导原则是存在的,但是flask sqlalchemy文档或任何其他来源(包括堆栈溢出)都没有关于如何使用flask alchemy进行版本控制的任何答案(外包我可能错了)。我包括了一个简单的示例(完全是虚构的),这样人们就可以更好地解释了。我发现的只是这个,我不知道该怎么处理这个。!