【从零开始的Swift开发心路历程-Day18】简易订单系统Part2

昨天我们已经成功建立资料库了,今天要做的是将资料存进资料库并且让TableView能马上更新资料库里的资料
昨天我们已经拉好我们所需的元件也拉完@IBOutlet了

在cell里的两个Label是用来显示订单名称及金额的~
那我们要如何让资料能写进资料库呢?
我们必须替按钮拉一个@IBAction,让这颗按钮被按下之後有一个把资料写入的动作,而写入的资料正是按钮上TextField所输入的内容

@IBAction func addData(_ sender: Any) {
    let order: Order = Order()
    order.name = nameTextField.text!
    order.price = Int(priceTextField.text!)!
    try! realm.write{realm.add(order)}
}


如此一来就成功将资料写进资料库啦!
接着我们要TableView能马上更新并显示资料
我们新增一个function里面有个空阵列,让资料库的内容加进空阵列里并在TableView显示,并在按钮的@IBAction呼叫此函数就完成啦

func allorders(){
        orders = []
        let allorders = realm.objects(Order.self)
        guard allorders.count > 0 else { print("nil");return }
        for i in 1...allorders.count{
            orders.append(SetOrder(setName: allorders[i-1].name, setPrice: String(allorders[i-1].price), setId : allorders[i-1].id))
        }
        myTableView?.reloadData()
    }


今天我们完成了新增订单的部分,明天来实作如何删除订单!


<<:  16 安装 Phoenix,产出新专案

>>:  Day18 vue.js新增文章

身体惯性-螃蟹改不了横行

早起运动Day8 - 身体习惯​ ​ 不假思索的起床,做第一件事情以後就会带到第二件事情。​ 就像看...

Day25 NiFi - 第三方程序执行

在过往的介绍篇幅当中,我们几乎都是透过 NiFi 原生的 Processor 来做处理,甚至整合一些...

铁人赛 Day29 -- 使用 JQuery 制作简易的loading画面

前言 一个网站要让他更完整,势必就需要当使用者进入网站时,先进行读取,但由於技术成分不足,只好先做...

更新网格机器人和策略回测

Strategies: 交易成本的正负号写反了,最近用一小时线测试才发现这件事 把交易成本设定移到前...

#24 JS: HTML DOM Events - Part 2

For the topic today, I can't fully understand the ...