この問題は多分下にリストされていますが、私のシナリオに合ったものは見えません。お気に入りに/から音楽を追加、削除する機能があります。私は最初にそれを追加して、それを削除することもできます。しかし、私は再びそれを追加します。ブーム!!!誰か助けてください。ありがとうございました!以下にスローされオブジェクトが削除されたか無効にされました
エラー:
***キャッチされない例外により「RLMException」にアプリを終了、理由:「レルムへの削除または無効化されたオブジェクトの追加が許可されていない」
私を助けてくださいレビューコード以下:
func addMusicToFavorite(music: Music) {
let realm = try! Realm()
try! realm.write {
realm.add(music)
}
}
func removeMusicFromFavorite(music: Music) {
//Tips: '\(musics.mId)' : put quote ' ' like this means String, if not it will treat it as Int
let realm = try! Realm()
let tmpMusic = realm.objects(Music.self).filter("_mId == '\(music.mId)'")
try! realm.write {
print("remove \(music.mId)")
realm.delete(tmpMusic)
}
}
マイミュージックモデル:
class Music: Object {
private dynamic var _mId: String!
private dynamic var _mTitle: String!
private dynamic var _mArtist: String!
private dynamic var _mThumbnail: String!
private dynamic var _mAlbumImg: String!
private dynamic var _mPath: String!
private dynamic var _mNumOfView: String!
private dynamic var _mDuration: String!
var mId: String {
return _mId
}
var mTitle: String {
return _mTitle
}
var mArtist: String {
return _mArtist
}
var mAlbumImg: String {
return _mAlbumImg
}
var mThumbnail: String {
return _mThumbnail
}
var mPath: String {
return _mPath
}
var mNumOfView: String {
return _mNumOfView
}
var mDuration: String {
return _mDuration
}
required init() {
super.init()
}
required init(realm: RLMRealm, schema: RLMObjectSchema) {
super.init(realm: realm, schema: schema)
//致命( "INIT(レルム:実装されていない:)スキーマ") }
required init(value: AnyObject, schema: RLMSchema) {
super.init(value: value, schema: schema)
//致命( "INIT(値:実装されていない:)スキーマ") }
override static func primaryKey() -> String? {
return "_mId"
}
convenience init(dict: Dictionary<String, AnyObject>) {
self.init()
if let id = dict["id"] as? String {
self._mId = id
}
if let titleAndArtist = dict["music_title"] as? String {
let tmp = Utils.instance.splitStringsWithCharacter(titleAndArtist)
self._mTitle = tmp.title
self._mArtist = tmp.artist
}
if let thumbnail = dict["image_thumb"] as? String {
self._mThumbnail = thumbnail
}
if let albumImg = dict["image_album"] as? String {
self._mAlbumImg = albumImg
}
if let path = dict["music_path"] as? String {
self._mPath = path
}
if let numOfView = dict["music_view"] as? String {
self._mNumOfView = numOfView
}
if let duration = dict["music_duration"] as? String {
self._mDuration = duration
}
}
}だけ答えとしてレコードの
'Music'オブジェクトのモデルを表示できますか? – xoudini
こんにちはxoudini、あなたのコメントありがとう、音楽のモデルを追加した私の編集した質問を確認してください...ありがとう! – GaaraMadara
"Boom !!!"で評価できますか? ;)レルムはエラーを投げますか?アプリは終了しますか? – HAS