Alex_P
(Alex P.)
1
我想手动设置某个类别的 import_id,以便从旧论坛导入剩余的讨论主题。
我在 rails c 中尝试了以下操作,但似乎没有生效:
[11] pry(main)> Category.find(3).custom_fields
=> {}
[12] pry(main)> Category.find(3).custom_fields['import_id'] = '50'
=> "50"
[13] pry(main)> Category.find(3).custom_fields
=> {}
pfaffman
(Jay Pfaffman)
2
我认为你需要执行类似的操作:
CategoryCustomField.create(category_id: 3,...)
请查看导入器(importers)中的代码以获取示例。
Alex_P
(Alex P.)
3
是的,终于找到了。
new_category.custom_fields["import_id"] = import_id if import_id
new_category.save!
看来我只需要调用 save 就可以了:slight_smile
我之前有点困惑,因为对于 SiteSetting 来说并不需要这样做。
[14] pry(main)> c = Category.find(3)
=> #<Category:0x000056548fd948a8
id: 3,
...
[15] pry(main)> c.custom_fields['import_id'] = '50'
=> "50"
[16] pry(main)> c.custom_fields
=> {"import_id"=>"50"}
[17] pry(main)> c.save!
=> true
[18] pry(main)> Category.find(3).custom_fields
=> {"import_id"=>"50"}