管理员登录时如何修复 Mailman 错误?

How to fix Mailman Bug when Admin Login?

 [----- Mailman Version: 2.1.9 -----] 
 [----- Traceback ------] 
Traceback (most recent call last):
 File "/usr/lib/mailman/scripts/driver", line 101, in run_main
 main()

 File "/usr/lib/mailman/Mailman/Cgi/admin.py", line 197, in main
show_results(mlist, doc, category, subcat, cgidata)

File "/usr/lib/mailman/Mailman/Cgi/admin.py", line 521, in show_results
  form.AddItem(show_variables(mlist, category, subcat, cgidata, doc))

   File "/usr/lib/mailman/Mailman/Cgi/admin.py", line 570, in show_variables
    add_options_table_item(mlist, category, subcat, table, item)

   File "/usr/lib/mailman/Mailman/Cgi/admin.py", line 585, in add_options_table_item
     val = get_item_gui_value(mlist, category, kind, varname, params, extra)

 File "/usr/lib/mailman/Mailman/Cgi/admin.py", line 624, in get_item_gui_value
   value = getattr(mlist, varname)

  File "/usr/lib/mailman/Mailman/MailList.py", line 146, in __getattr__
AttributeError: from_is_list

我尝试通过抛出的错误登录到管理员: Mailman 版本 2.1.9 中的错误

很抱歉,我们遇到了错误! 请将此问题告知本站站长。追溯和其他系统信息的打印已被明确禁止,但网站管理员可以在 Mailman 错误日志中找到此信息。 请帮我解决它!谢谢

特别感谢 Mark Sapiro Link post

列表的 data_version 属性与 Mailman.Version.DATA_FILE_VERSION 存在问题。添加 from_is_list 和其他新属性时,Mailman.Version.DATA_FILE_VERSION 递增以使其大于列表的 data_version 属性,这反过来会导致列表在第一次实例化时更新.

也许您有一些其他补丁增加了 Mailman.Version.DATA_FILE_VERSION,因此列表的 data_version 属性不会 < Mailman.Version.DATA_FILE_VERSION 导致更新被跳过。

解决此问题的方法是将 Mailman.Version.DATA_FILE_VERSION 设置为大于列表的 data_version 属性的值。

第一个运行这个bash脚本

对于 /path/to/mailman/bin/list_lists --bare 中的 l 做 /path/to/mailman/bin/dumpdb /path/to/mailman/lists/$l/config.pck \ | grep data_version 完成

这将为每个列表打印 data_version。如果 N 是最大的此类值,请编辑 Mailman/Version.py 以更改行

DATA_FILE_VERSION = 104

设置一个大于 N 的值。然后访问应该更新所有列表的列表信息概览页面。

然后为了不再发生这种情况,在 Mailman/Version.py 中将 DATA_FILE_VERSION 设置回 104 并创建一个包含单行

的文件

mlist.data_version = 104

和运行这个bash脚本

cd /path/to/mailman/bin/ 对于我 ./list_lists --bare 做 ./config_list -i /path/to/above/file $l 完成

这应该可以解决问题。

-- Mark Sapiro 高速公路是为赌徒准备的, 加利福尼亚州旧金山湾区更好地运用你的感觉 - B. Dylan