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

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

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

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

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

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

Q&A

0回答

156閲覧

【Realm】LinkedObjectsが存在するか確認したい

grief137

総合スコア14

Realm

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

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

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

0グッド

0クリップ

投稿2019/03/15 16:21

やりたいこと

オブジェクト'Idea'と'Category'を1対多で関連付けています。
IdeaをCategoryでfilterかけて取得する際に、関連づいていないIdeaだけ取得したいのですが、取得方法が分かりません。

どなたかアドバイス頂けないでしょうか。

swift

1//categoryIdは'1'から登録する 2//新規追加は最大連番+1を登録する 3class Category: Base { 4 @objc dynamic var categoryId:Int = 0 5 @objc dynamic var categoryName = "" 6 let ideas = List<Idea>() 7 8 override class func primaryKey() -> String { 9 return "categoryId" 10 } 11 12} 13 14class Idea: Base { 15 @objc dynamic var ideaId: String? = "IID" + NSUUID().uuidString 16 @objc dynamic var ideaName: String? = "" 17 //@objc dynamic var categoryName: String? = "" 18 @objc dynamic var details: String? = "" 19 let category = LinkingObjects(fromType: Category.self, property: "ideas") 20 21 override class func primaryKey() -> String { 22 return "ideaId" 23 } 24} 25/* 26 check new idea name already exists 27 @param ideaname : String 28 @param category : Category 29 @return : Bool 30 */ 31 func checkIncludeIdeaName(ideaname: String, category: Category?) -> Bool { 32 var categoryParam = [0] 33 if category != nil { 34 categoryParam = [category!.categoryId] 35 } 36 37 //Categoryと関連づいたIdeaは取得できるが、関連のない(ex:categoryId = 0)Ideaは取得出来ない 38 let ideaList = realm.objects(Idea.self)!.filter("ideaName == %@", ideaname).filter("ANY category.categoryId IN %@", categoryParam).value(forKey: "ideaName") as! Array<Any> 39 40 if ideaList.count > 0 { 41 return false 42 } 43 return true 44 } 45

補足情報

swift 4.2
xcode 10.1
RealmSwift 3.13.1

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問