【发布时间】:2019-05-11 10:24:49
【问题描述】:
我有 3 个枚举:计算类型 (+,-),+ 类别(10 个案例),- 类别(15 个案例)。
那么如何使用我的枚举,以便根据计算类型,模型的实例将接受所需的列表。
//Example of Model
class Transaction {
var typeOfCalculation: TypeOfCalculation
var category: CategoryForConsuption
}
enum TypeOfCalculation {
case income
case consuption
}
enum CategoryForConsuption{
case noCategories
case food
case cafesAndRestaurants
case manufacturedGoods
}
enum CategoryForIncome {
case salary
case debt repayment
}
逻辑如下:如果计算类型是消费,则改为CategoryForConsuption,如果是收入,则改为CategoryForIncome。
我编辑了模型:
enum Accounting {
case income(category: IncomeCategory)
case consumption(category: ConsumptionCategory)
}
enum ConsumptionCategory: String, CaseIterable {
case noCategories = "No categories"
case food = "Food"
case cafesAndRestaurants = "Cafes and Restaurants"
case manufacturedGoods = "Manufactured Goods"
case forceMajeure = "Force Majeure"
}
enum IncomeCategory: String, CaseIterable {
case salary = "Salary"
case deposit = "Deposit"
}
但现在我遇到了新问题。因为我需要将所有这些用于我的数据模型(realM)。 我应该怎么做?
这是我的旧数据模型:
@objc dynamic private var privateTypeOfCalculation: String = TypeOfCalculation.consumption.rawValue
var typeOfCalculation: TypeOfCalculation {
get { return TypeOfCalculation(rawValue: privateTypeOfCalculation)! }
set { privateTypeOfCalculation = newValue.rawValue }
}
@objc dynamic private var privateCategoryForConsuption: String = CategoryForConsuption.noCategories.rawValue
var categoryForConsuption: CategoryForConsuption {
get { return CategoryForConsuption(rawValue: privateCategoryForConsuption)! }
set { privateCategoryForConsuption = newValue.rawValue }
}
【问题讨论】:
-
案件还债——真的合算吗?
-
不,因为是例子
-
我正在尝试使用您的建议