如何使用rails_admin_import gem导入具有关联的模型?

问题描述

我正在尝试导入具有ProjectTechnology模型的数据库(项目具有许多技术)。每个项目至少应具有1种技术。我为此任务使用rails_admin_import gem。据我了解,在项目导入期间,gem应该找到模型的关联(在我的情况下为技术),并将它们关联到模型(如果存在)。

当我导入技术时,一切都很好,但是当我导入项目时,对于每个项目,我都会收到此错误

Failed to create Project_1: Technologies minimum allowed: 1

我尝试在导入技术之前导入项目,然后,将它们添加到两个映射键中,但是没有任何改变:

config.model 'Project' do
  import do
    mapping_key :name
    include_all_fields
  end
end
config.model 'Technology' do
  import do
    mapping_key :name
    include_all_fields
  end
end

也许有人可以帮助我,说我做错了什么?

UPD:问题是我使用认的rails_admin export导出了数据,这样将数据保存在csv中:

enter image description here

但是rails_admin_import需要使用以下格式的数据:

enter image description here

所以我需要更改我的问题。我应该如何配置rails_admin以便它以rails_admin_import接受的格式导出数据?

解决方法

我找到了一种方法,但可能不是最好的方法。

我使用rails_admin_import的index方法手动创建所需的Cell: ({ row }) => ( <Dropdown isOpen={dropdownToggles[row.index]} toggle={() => setDropdownToggles(handleDropdownToggles(row.index))}> </Dropdown> ) 密钥。

before_import_associations

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...