EasyRealm 3.0.0

EasyRealm 3.0.0

TestsTested
LangLanguage SwiftSwift
License MIT
ReleasedLast Release Nov 2017
SwiftSwift Version 4.0
SPMSupports SPM

Maintained by Allan Vialatte.


Downloads

Total6,161
Week91
Month990

Installs

Apps111
Apps WeekApps This Week 12
Pod Tries4
Test Targets8
Test WeekTests This week 2
powered by Segment

GitHub

Stars233
Watchers11
Forks19
Issues3
Contributors1
Pull Requests0

Code

Files9
LOCLines of Code 253


EasyRealm 3.0.0

EasyRealm

Version
Carthage compatible
Platform
Build Status
Swift 4
codecov
License

EasyRealm is a micro-framework (less than 200 LOC) that helps you use Realm.

Versions guides

Swift Realm EasyRealm
3.0 >= 2.4 2.0.1
3.2 / 4.0 >= 3.0.0 >= 3.0.0

Keys Features

EasyRealm import many features as :

  • Deep cascade deleting
  • Deep unmanaged object
  • Get managed object from unmanaged object.
  • Multithread Action (save / edit / delete / query)

Promise

EasyRealm make 4 promises :

  • EasyRealm never transform secretly an unmanaged Object to a managed Object and vice-versa.
  • EasyRealm let you use managed and unmanaged objects identically.
  • EasyRealm never manipulate thread behind your back, you keep full control of your process flow.
  • EasyRealm never handle Error for you.

Exemples

Using

  • No inheritance.
  • No protocol.
  • Import Framework
  • Enjoy

Save

To save an object :

let pokemon = Pokemon()
try pokemon.er.save(update: true)
//OR
let managed = try pokemon.er.saved(update: true)

Edit

To edit an object :

let pokemon = Pokemon()

try pokemon.er.edit {
  $0.level = 42
}

Delete

To delete an object :

let pokemon = Pokemon(name: "Pikachu")

try pokemon.er.delete()
//or
try pokemon.er.delete(with: .simple)
//or
try pokemon.er.delete(with: .cascade)

To delete all objects :

try Pokemon.er.deleteAll()

Queries

To query all objects of one type :

let pokemons = try Pokemon.er.all()

To query one object by its primaryKey :

let pokemon = Pokemon.er.fromRealm(with: "Pikachu")

Helping Variables

  • isManaged :
pokemon.er.isManaged // Return true if realm != nil and return false if realm == nil
  • managed :
pokemon.er.managed // Return the managed version of the object if one exist in Realm Database
  • unmanaged :
pokemon.er.unmanaged // Return an unmanaged version of the object

Installation

EasyRealm is available through CocoaPods. To install
it, simply add the following line to your Podfile:

CocoaPods

use_frameworks!
pod "EasyRealm", '~> 2.0.0'

Carthage

github 'PoissonBallon/EasyRealm'

Author

License

EasyRealm is available under the MIT license. See the LICENSE file for more info.

Other