Firepup650
(Firepup Sixfifty)
1
在新的论坛上遇到了这个问题,我尝试添加一个主题,但由于文件扩展名的问题而失败。然后我暂时允许了 * 以尝试修复问题,之后在尝试添加主题时开始出现 500 错误。
消息
Failed to process hijacked response correctly : ActiveRecord::RecordNotUnique : PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_child_themes_on_parent_theme_id_and_child_theme_id"
DETAIL: Key (parent_theme_id, child_theme_id)=(50, 35) already exists.
回溯
rack-mini-profiler-3.3.0/lib/patches/db/pg.rb:69:in `exec_params'
rack-mini-profiler-3.3.0/lib/patches/db/pg.rb:69:in `exec_params'
activerecord-7.0.8/lib/active_record/connection_adapters/postgresql_adapter.rb:768:in `block (2 levels) in exec_no_cache'
activesupport-7.0.8/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
activesupport-7.0.8/lib/active_support/dependencies/interlock.rb:41:in `permit_concurrent_loads'
activerecord-7.0.8/lib/active_record/connection_adapters/postgresql_adapter.rb:767:in `block in exec_no_cache'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `synchronize'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
Firepup650
(Firepup Sixfifty)
3
我会再次检查,但重现步骤应该是:
- 找到一个默认不允许某些文件的模板(或删除模板允许扩展列表中的所有内容,或类似操作)
- 尝试导入模板
- 查看由于扩展名而被拒绝
- 允许相关扩展名(或仅允许
*)
- 仍然尝试导入模板但失败。
模板可能还需要附加一些模板组件,我不确定。
我最初是使用我自己的模板来触发此问题的,但据我所知,大多数模板理论上都可以触发此问题。
编辑:
是的,这里唯一真正强制的条件似乎是被阻止的文件,因此如果禁止自定义字体、徽标等文件的扩展名,带有这些文件的模板就会触发此问题。(另外,管理员上传似乎会覆盖模板上传,因此请确保在任一设置中都不允许该文件)
Don
5
你好 
我检查了你的主题,问题似乎出在你的 about.json 文件上。
组件中存在重复。
第 29 行和第 38 行 
不过,你同时安装了相当多的组件。它们都是必需的吗? 
2 个赞
Firepup650
(Firepup Sixfifty)
6
啊,抱歉!这是我的疏忽。
我其实从未打算让其他人使用这个主题,它只是根据我的喜好进行了大量调整,并且拥有我喜欢的主题组件。