代码之家  ›  专栏  ›  技术社区  ›  sametbilgi

如何根据用户的答案创建常见问题解答模型?

  •  2
  • sametbilgi  · 技术社区  · 7 年前

    我想创建faq视图控制器。但我找不到创建模型的最佳方法。

    我想展示基于用户答案的多种解决方案。例如

    • 应用程序问题
      • 许可证问题
        • 许可证无效
          • 以前是否在应用程序中输入过此许可证?
            • 如果是,请给出这些解决方案
              • ...
              • 这个解决方案解决了你的问题吗?
                  • ...
            • 如果没有,请展示这些解决方案
              • ...
          • ...

    我创造了模型

    struct FaqItem {
        let name: String
        let categories: [FaqCategory]
    }
    
    struct FaqCategory {
        let name: String
        let problems: [FaqProblem]
    }
    
    struct FaqProblem {
        let name: String
        let solutions: [FaqSolution]
    }
    
    struct FaqSolution {
        let description: String
    }
    

    但我不知道如何根据用户的答案显示解决方案。实现这一目标的最佳方法是什么?

    谢谢

    1 回复  |  直到 7 年前
        1
  •  0
  •   adams.s    7 年前

    我认为你需要在你的生活中进行某种向上投票(比如stackoverflow) FaqSolution . 我的理解是,人们可以在stackoverflow这样的“评论”部分给出解决方案吗?现在,您只有一系列注释(“解决方案”),但没有对它们进行排序的选项。使用向上投票系统,您可以对已向上投票的解决方案进行排序等。

    实际上,我会添加一个 upvote 财产归你所有 常见问题解答

    struct FaqSolution {
        let description: String
        let upvotedCount: Int
    }
    

    然后根据投票结果对你的解决方案进行排序。

    如果你想为你的用户提供解决方案,而另一个用户之前已经提出了一个问题。然后你可能需要某种识别系统来识别你描述的关键词。 最简单的方法是让用户选择添加stackoverflow中的关键字(swift、ios、tableview等)通过这种方式,您可以根据用户提供的关键字对所有解决方案/问题进行排序。