Ruby on rails 如何使用rails\u admin\u import gem导入具有关联的模型?
我正在尝试导入我的数据库,其中包含Ruby on rails 如何使用rails\u admin\u import gem导入具有关联的模型?,ruby-on-rails,import,rails-admin,Ruby On Rails,Import,Rails Admin,我正在尝试导入我的数据库,其中包含Project和Technology模型(Project有许多技术)。每个项目应至少有1项技术。我使用rails\u admin\u import gem来完成这个任务。据我所知,在项目导入期间,gem应该找到模型的关联(在我的例子中是技术),并将它们连接到模型(若存在) 导入技术时一切正常,但在导入项目时,每个项目都会收到以下错误: Failed to create Project_1: Technologies minimum allowed: 1 在导入
Project
和Technology
模型(Project有许多技术)。每个项目应至少有1项技术。我使用rails\u admin\u 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\u admin export导出了数据,它将数据保存在csv中,如下所示:
但是rails\u admin\u import需要以下格式的数据:
所以我需要改变我的问题。我应该如何配置rails\u admin,以便以rails\u admin\u import接受的格式导出数据?我找到了一种方法,但可能不是最好的方法 我在导入前使用rails管理导入的
方法手动创建所需的技术
键
def before_import_associations(record)
record[:technologies] = record[:name_technologies].split(',')
end