当前位置:  开发笔记 > 编程语言 > 正文

用于可可开发的良好数据库库/ ORM

如何解决《用于可可开发的良好数据库库/ORM》经验,为你挑选了1个好方法。

我正在开发一个可可应用程序,它将大量使用Web服务和标准的dbms(很可能是MySQL),我想知道是否有人对他们使用的数据库库或ORM解决方案有一个很好的选择.由于需要支持标准DBMS并且能够在正常应用程序操作之外修改数据,因此CoreData不是一个选项.

我从新的开源库中找到了许多可能的选项:http: //github.com/aptiva/activerecord/tree/master

为C MySQL api编写自己的包装器.

欢迎任何建议,

谢谢!

保罗



1> Dirk Stoop..:

当我们第一次开始使用Checkout时,我们遇到了类似的问题,我们的解决方案是使用PyObjC在Python中编写整个应用程序.Checkout 1有一个sqlite后端,Checkout 2有一个postgres后端.

在Pyton方面有几个非常成熟和强大的ORM,比如SQLObject,它很容易使用(我们用它来用于Checkout 1.0)和SQLAlchemy,它更强大但有点难以包裹你的大脑(我们将它用于Checkout 2.0).

您可以评估的一种方法是在Objective-C中构建应用程序,但是在Python中编写数据模型和数据库连接/管理代码.您可以使用PyObjC从此代码创建一个插件包,然后将其加载到您的应用程序中这或多或少是我们为Checkout Server采用的方法,它使用Foundation命令行工具来管理postgres服务器及其中的数据库,这个CLI工具反过来加载一个包含所有实际数据库代码的Python插件包.最终用户主要通过"系统偏好设置"窗格与数据库进行交互,该窗格不知道数据库的外观,而是使用命令行工具与其进行交互.

加载插件很简单:

NSBundle *pluginBundle = [NSBundle bundleWithPath:pluginPath];
[pluginBundle load];

您可能需要为您希望从Obj-C代码访问的bundle中的类创建.h文件.

推荐阅读
linjiabin43
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有