Realmの基礎的な使い方

Blog

 

今回は、iosアプリでよく使うデーターベース「Realm」の使い方についてです。

 

 

Realmとは?

 

 

Realmとは初心者でも使いやすく、かつ効率よく安全に構築できるデーターベースのことを言います。

 

iOSアプリはRealmを使うことが主流になっていてCoreDataもあるのですが、初心者の方には少々難しく感じます。

 

初心者の方はRealmをおすすめです。

もちろん上級者も使っているので安心してください。

 

今回は、基礎的な使い方について紹介していきます。

 

環境

 

  • Xcode9
  • Swift4
  • Realm

 

 

 

UI

 

 

  1. UILabelを配置。
  2. UITextFieldを配置。
  3. UIButtonを配置。

 

 

 

 

 

 

接続

 

  1. LabelをOutlet接続。Name:「label」。
  2. TextFieldをOutlet接続。Name:「textField」。
  3. ButtonをAction接続。Name:「submit」。

 

 

 

 

 

Realmのインストール

 

RealmはCocoaPodsでインストールします。

Cocoapodsの導入方法はこちらを参照してください。

 

インストールできたらPodfileを編集していきます。

 

  1. Podfileに「Realm」と「RealmSwift」を追加。
  2. ターミナルで「pod install」。

 

 

2. )

$ pod install

 

 

 

Realmファイルの作成

 

  1. File > New > Fileで新規作成。Swift Fileを選択。「NewLabel.swift」でファイル作成。
  2. ファイル内を編集する。

 

1.)

 

 

2. )

import Foundation
import RealmSwift   //追加

//ここから追加
class myData: Object {
    
    @objc dynamic var title = "";
    
}
//ここまで追加

 

コーディング

 

  1. ViewDidLoad内にコードを追加。
  2. Actionボタンにコードを追加。

 

 

import UIKit
import RealmSwift   //追加

class ViewController: UIViewController {
    
    
    @IBOutlet weak var textField: UITextField!
    
    @IBOutlet weak var label: UILabel!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
//     ここから追加  ①
            let realm = try! Realm()

            let newlabels = realm.objects(myData.self)

            for newlabel in newlabels {

            label.text = newlabel.title
//      ここまで追加 ①
                
        }
        
    }
    
    
    
    @IBAction func send(_ sender: Any) {
        
//        ここから追加 ②
        let newLabel = myData()
        
        newLabel.title = textField.text!
        
        do{
            let realm = try Realm()
            try realm.write({ () -> Void in
                realm.add(newLabel)
                
                label.text = newLabel.title
                
                print("ToDo Saved")
            })
            
        }catch{
            
            print("Save is Faild")
        }
        
//        ここまで追加 ②
        
        
    }
    

}

 

 

実行結果

 

 

実行は登録したラベルのデータが残っていたら成功です。

 

 

 

 

 

以上で「Realmの基礎的な使い方」の説明を終わります。

 

 

🤗

 

 

 

 

コメント