質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Realm

RealmとはSQLiteやCore Dataに代わるモバイルデータベースです。iOSとAndroidの両方でサポートされています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

0回答

252閲覧

realmモデルで、.textを取得したい

退会済みユーザー

退会済みユーザー

総合スコア0

Realm

RealmとはSQLiteやCore Dataに代わるモバイルデータベースです。iOSとAndroidの両方でサポートされています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2019/05/26 02:40

realmモデルで、textfield.textを取得する

現在realmを使ったアプリを作っています。realmモデルは下記にある、MyModelです。
このモデル内で、textfieldに入っている文字を取得し、imageTitleに入れたいのですが可能ですか?
textfieldは、viewcontrollerで宣言し、Main.storyboardで関連付けをしています。。

realmモデル

MyModel

1 2import Foundation 3import RealmSwift 4 5final class MyModel: Object { 6 7 static let realm = try! Realm() 8 9 @objc dynamic var id:Int = 0 10 @objc dynamic var imageTitle: String = "" 11 @objc dynamic var subImageTitle: String = "" 12 @objc dynamic private var _widgetImage: UIImage? = nil 13 @objc dynamic var widgetImage: UIImage? { 14 set { 15 self._widgetImage = newValue 16 if let value = newValue{ 17 self.imageData = value.jpegData(compressionQuality: 1) 18 } 19 } 20 get { 21 if let image = self._widgetImage{ 22 return image 23 } 24 if let data = self.imageData{ 25 self._widgetImage = UIImage(data: data) 26 return self._widgetImage 27 } 28 return nil 29 } 30 } 31 @objc dynamic private var imageData: Data? = nil 32 33 34 override static func primaryKey() -> String? { 35 return "id" 36 } 37 38 override static func ignoredProperties() -> [String]{ 39 return ["widgetimage", "_widgetImage"] 40 } 41 42 static func lastId() -> Int{ 43 if let widgetData = realm.objects(MyModel.self).sorted(byKeyPath: "id", ascending: true).last{ 44 return widgetData.id + 1 45 }else{ 46 return 0 47 } 48 } 49 50 static func creat() -> MyModel{ 51 let widgetData = MyModel() 52 widgetData.id = lastId() 53 return widgetData 54 } 55 56 func delete(number: Int){ 57 58 let result = MyModel.realm.objects(MyModel.self).filter("id = (number)") 59 60 try! MyModel.realm.write { 61 MyModel.realm.delete(result) 62 } 63 } 64 65 func save(){ 66 try!MyModel.realm.write{ 67 MyModel.realm.add(self) 68 } 69 } 70 71 static func loadAll() -> [MyModel]{ 72 73 let widgetDatas = realm.objects(MyModel.self).sorted(byKeyPath: "id", ascending: true) 74 var array: [MyModel] = [] 75 for widgetData in widgetDatas{ 76 array.append(widgetData) 77 } 78 return array 79 } 80}

補足情報(FW/ツールのバージョンなど)

swift4
realm3.15

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hayabusabusash

2019/06/26 03:52

モデル内だけでは難しいかもしれません... モデル内にStringの引数を持った関数を作って、ViewControllerからそれを実行するのではダメでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問