tableau是用于构建测试设备和种子数据的helper类的集合。

tableau的Python项目详细描述


tableau是用于构建测试设备和种子数据的helper类的集合。

  • 没有任何预定义模式的模型组合。模型对象关系通过值注释自动推导:

    from tableau import Datum
    
    foo = Datum(
      'Foo', ('id'), # schema name / identifiers
      id=1,
      field_a=1,
      field_b=2,
      collection=one_to_many([
        Datum(
          'Bar', auto('id'), # id will be automagically generated by the walker
          field_c=1
          ),
        Datum(
          'Bar', auto('id'),
          field_c=1
          ),
        ],
        referring_fields='foo_id'
        )
      )
    
  • 以ORM不可知的方式将模型对象图导出到普通的ANSI SQL语句:

    import sys
    from tableau import Datum, DataSuite, DataWalker
    from tableau.sql import SQLGenerator
    
    # ...
    
    suite = DataSuite()
    DataWalker(suite)(foo)
    SQLGenerator(sys.stdout, encoding='utf-8')(suite)
    

    以上生成以下SQL语句:

    INSERT INTO `Foo` (`id`, `field_a`, `field_b`) VALUES
    (1, 1, 2);
    INSERT INTO `Bar` (`id`, `field_c`, `foo_id`) VALUES
    (1, 1, 1),
    (2, 1, 1);
    
  • > P>自动映射现有的SqalalChany表/声明类 到数据

    from tableau.sqla import newSADatum
    
    # metadata = ...
    # Base = ...
    # session = ...
    
    class Foo(Base):
      __tablename__ = 'foos'
      id = Column(Integer, primary_key=True)
      field = Column(String)
    
      def some_model_specific_method(self):
        return self.field
    
    Datum = newSADatum(metadata, Base)
    datum = Datum(
      'foos', ('id'),
      field='test'
      )
    print datum.some_model_specific_method() # 'test'
    session.add(datum) # it can even be added to the session!
    

更改历史记录

0.0.0
未发布。
0.0.1
首次发布。没有医生!
0.0.2
支持映射到sqlalchemy表和声明类。 还是没有医生!
0.0.3
在0.0.2中修复关键错误。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
在java中使用ActionListeners的小程序   为什么这两个文件。存在(…)和文件。不存在(…)?   需要帮助将XML/Java转换为edi(834)文档吗   java GWT 2.5.1和IntelliJ调试模式,可序列化异常   java由用户运行给定的程序   junit Java<>从函数返回的类型   java Hibernate:我需要刷新()吗?   java如何通过GET REST API调用传递ssl证书   java H2 1.4.185无法通过上次使用Hibernate实体运行的服务器生成的UUID进行查询   javajavafx:具有本机行为的自定义窗口   java是否替换当前字符串设置以从xml收集字符串项?   RelativeLayout下的java Android viewpager   java源代码在JD反编译工具反编译后有注释   java Recycler视图不显示Firebase中的图片和类别