我很难理解如何创建one-to-many
关系中彼此相关的对象。
是否有需要输入数据的特殊序列?换句话说,是否需要同时输入所有者和物品?
以下是我要做的事情,以便更好地理解。
我有一个简单的类似shoppingList的应用程序,其中列表可以包含许多项目。我想要的是first
让用户能够将单个项目输入UITableView
然后如果用户想要保存数据,那么他就会创建一个new list
但是我我不确定如何或何时输入数据。
以下是我在Realm
中保留项目的代码,并在表格中显示这些项目。
import Foundation
import RealmSwift
class ShoppingList: Object{
dynamic var listName = ""
var itemList = List<Item>()
}
import Foundation
import RealmSwift
class Item:Object {
dynamic var productName: String = ""
}
class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var inputProductName: UITextField!
@IBOutlet weak var inputListName: UITextField!
@IBOutlet weak var itemsTable: UITableView!
var item:Item?
var realm:Realm?
override func viewDidLoad() {
super.viewDidLoad()
realm = try! Realm()
}
@IBAction func newItem(_ sender: Any) {
item = Item()
item?.productName = inputProductName.text!
try! realm?.write {
realm?.add(item!)
}
itemsTable.reloadData()
inputProductName.text = “” // clear inputField
}
/// TABLE
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
let items = realm?.objects(Item.self)
return (items?.count)!
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = UITableViewCell()
let items = realm?.objects(Item.self)[indexPath.row]
cell.textLabel?.text = items?.productName
return cell
}
}
如何创建包含表格中显示的项目的列表?