改变打印报表的文件名
-
打印pdf的时候文件名都是单一的,不符合需求。
找了一些资料说在setting里面的report修改 ,试了一些不行。
后来看到一个从生成时候修改,
很不错,分享下:
找到web/controllers 下的main.py
找到这句:
file_name = '%s.%s' % (name_flag ,file_name, report_struct['format'])
在前面添加 if action.has_key('context'):<br /> action_context = action.get('context',{})<br /> if action_context.has_key('active_model') and action_context.has_key('active_id'):<br /> action_active_model = action_context.get('active_model','')<br /> action_active_ids = action_context.get('active_ids', [])<br /> if action_active_model and action_active_ids:<br /> # Use built-in ORM method to get data from DB<br /> m = req.session.model(action_active_model)<br /> r = m.read(action_active_ids, False, context)<br /> # Parse result to create a better filename<br /> for i, item in enumerate(r):<br /> if item.has_key('name'):<br /> if i == 0: <br /> file_name = ('%s') % (item['name'])<br /> else:<br /> file_name = ('%s-%s') % (file_name, item['name'])
ok, 后面生成的文件名你可以自己再设计...