我正在使用 JSON API 资源创建 Rails 应用程序。它有雇主和客户。雇主模型具有名称、网站和支持电子邮件作为属性。电子邮件使用 JSON 序列化器存储。
serialize :support_emails, JSON
为了保存支持电子邮件,我在雇主模型中添加了以下方法
def support_emails=(data)
self[:support_emails] = data&.split(',')&.map { |email| email.strip.downcase }&.uniq
end
支持电子邮件将以逗号分隔的字符串形式输入到文本框中。
在雇主资源中,我将 support_emails 作为字符串返回
def support_emails
model.support_emails&.join(', ')
end
在这里我和我的同事有不同的想法。我的同事说我们应该按原样返回 support_emails。即数组格式。因为显示和读取应该在UI层面完成。因此,从数组转换为字符串的逻辑应该在 UI 级别而不是在资源级别。
我的思考过程是这样的:我从文本框中获取以逗号分隔的字符串形式的 support_emails。因此,服务器应该在收到数据时返回数据。
那么,在这种情况下,正确的做法应该是什么呢?