我正在尝试使用内容在我的应用程序中显示一些常见问题解答内容,下面是我用来获取数据的 UserFAQs.swift 类,它工作正常。现在我有一个新的要求,即为来宾用户添加常见问题解答。只有每个用户的数据不同,所有其他事情都是相同的。因此,我创建了一个名为guestFAQs的现有用户常见问题解答的重复内容模型,并为其添加了内容。在我下面的课程中,它们都单独工作,例如:如果我在下面的课程中设置 contentTypeId = “guestFAQs” 或 contentTypeId = “userFAQs”,它工作正常。但是我需要根据用户类型获取,当我根据下面的条件设置 contentTypeId 时,它总是给我结果为“userFAQs”即使用户类型是访客。我在这里错过了什么吗?任何帮助表示赞赏。 这是我正在使用的库。
import UIKit
import Contentful
final class UserFAQs: EntryDecodable, FieldKeysQueryable, Resource {
static var contentTypeId = (Utilities.userType == .normalUser) ? "userFAQs" : "guestFAQs"
let sys: Sys
var sectionIndex: Int?
var sectionName: String?
var questionName: String?
var answer: String?
// MARK: Initialization
public required init(from decoder: Decoder) throws {
print("APIName = \(UserFAQs.contentTypeId)")
sys = try decoder.sys()
let fields = try decoder.contentfulFieldsContainer(keyedBy: UserFAQs.FieldKeys.self)
sectionIndex = try fields.decodeIfPresent(Int.self, forKey: .sectionIndex)
sectionName = try fields.decodeIfPresent(String.self, forKey: .sectionTitle)
questionName = try fields.decodeIfPresent(String.self, forKey: .questionName)
answer = try fields.decodeIfPresent(String.self, forKey: .sectionText)
}
enum FieldKeys: String, CodingKey {
case sectionIndex, sectionTitle, questionName, sectionText
}
}