-
30-09-2019 - |
题
我有模型:
User -1---n- Transaction(amount,description, date)
User -1---n- TransactionImport -1---n- TransactonImportField(name,value)
(个人费用跟踪应用程序)。
我想实现的是:
- 用户打开URL并使用交易列表粘贴CSV。
- 用户提交它。
- 系统将CSV的数据提取到
TransactionImport
(行) +TransactionImportField
(细胞)。 - 用户可以从导入数据中选择哪个列表示什么(金额,描述,日期)
TransactionImport(Field)
. - 用户单击保存和系统传输
TransactionImport
进入交易。
我似乎无法正确正确的事实是,步骤3创建了多个记录 TransactionImport
(和相关 TransactionImportField
).
所以做 POST /transaction_imports?csv=abcd
如果我们会恢复,预计将产生一个记录。但是代码应该是这样的:
# TransactionImportsController
def create
result = TransactionImports.parse(params[:csv])
flash[:notice] = result.message
redirect_to transaction_imports_path
end
我可能正在从错误的角度接近任务,因为我觉得实现不适合TP senasited_resources.
您能否建议最常规的实施方式?
谢谢,
dmytrii。
解决方案
REST/HTTP没有期望进行帖子只会创建一个记录。也许是默认的导轨行为,但您不应因此而限制您的设计。
不隶属于 StackOverflow