NAMDatabase 1.0.6

NAMDatabase 1.0.6

Narlei Moreira维护。



NAMDatabase

Version License Platform Twitter

关于

NAMDatabase是使用SQLite的一种非常简单的方式。忘记解析器、查询、更新!只需使用例如.saveData().delete()

解决方案的核心是NAMObjectModel类。它抽象了所有SQL命令。

当您首次初始化库时,NAMDatabase会创建一个.sqlite数据库和所有基于实现NAMObjectModel的类的表。

工作方式

首先,创建一个模型

如果您需要持久化一个属性,请添加@objc

import NAMDatabase

class Person: NAMObjectModel {
    @objc var name: String!
}

初始化

此代码将创建数据库和所有表。

在您的AppDelegate中添加

NAMDatabase.shared()?.initialize(true)

将true传送给日志记录数据库路径。

如果需要重新创建表,运行

NAMDatabase.shared()?.createAllTables()

此代码将删除并重新创建数据库,注意安全。

保存数据

let person = Person()
person.name = "Narlei"
person.identifier = "MY_ID"
person.saveData()

如果已存在ID为"MY_ID"的登记项,则将更新。

要获取唯一ID,可以使用

let person = Person()
let id = person.getUniqueKey()
person.identifier = id
person.saveData()

获取数据

// Get by Identifier:
if let personResult = Person.getObjectWithId("MY_ID") as? Person {
	print(personResult.name)
}

// Get with SQLite where:
if let array = Person.getAllDataWhere("name like 'Nar%'") as? [Person] {
	print(array)
}

删除数据

按标识符删除

Person.deleteObject(withId: "MY_ID")

使用SQLite where条件删除

Person.deleteAllDataWhere("name like 'Nar%'")

忽略属性

在Swift类中,如果要忽略属性,只需不要添加@objc,或者可以使用

override class func ignoredProperties() -> [Any]! {
    return ["name"]
}

主键

默认属性 identifier 是主键,你可以使用以下方式来更改:

override class func primaryKeys() -> [Any]! {
	return ["id"]
}

安装

NAMDatabase可通过CocoaPods获取。要安装它,只需将以下行添加到Podfile中:

pod 'NAMDatabase'

示例

要运行示例项目,首先克隆仓库,然后从Example目录运行pod install

请参阅以下示例 这里

TODO

  • 创建用于创建模型的模板;
  • 数据库迁移助手;

作者

narlei, [email protected]

许可证

NAMDatabase 受 MIT 许可证的许可。有关更多信息,请参阅 LICENSE 文件。

请向我支付一杯咖啡

paypal