successit 发表于 2024-5-10 14:40:24

9.0.103 EL菜单数据源外联时,设计器和服务器图标设置如何同步

一看就会,超有用活字格技能:一百九十七、EL-导航菜单数据表图标随文字颜色
https://gcdn.grapecity.com.cn/showtopic-217755-1-1.html
(出处: 葡萄城开发者社区)



看了大佬的这个帖子,图标在表里字段,但现在有个问题,设计器的应用路径是Forguncy,发布后的应用为实际应用名,按照教程里说的路径写为相对路径,比如本地设计器查看时存这样的字段 /Forguncy/GeneratedResources/Images/GenerateImages/ImageCellType/ ,设计器预览可以正常显示
发布后,由于应用不是Forguncy,所以菜单图片就显示不了,把Forguncy替换成实际应用名就可以显示。

那现在,如果要让设计器和发布后的都能显示图标,要怎么设置啊 :L

Grayson.Shang 发表于 2024-5-10 14:40:25

感谢大佬支持,当时确实没有考虑到,应用发布后的情况。

我这边分析了一下,若是想要随着发布不同的应用,以及设计器也可以正常的使用,那么在存储文件路径的时候,就不能将应用名存储到数据表中,而是存储文件其他部分的路径,然后再页面加载的时候,根据发布应用的应用名拼接完整的路径,具体参考如下


当然若是这样使用的话,这个方案反而变得复杂了,推荐使用附件的形式

易水寒 发表于 2024-5-10 18:04:39

直接使用Forguncy.Helper.SpecialPath.getImageEditorUploadImageFolderPath();我试了下是好的,如图;
如果需要可以使用设置变量api保存后,方便后续使用这个变量,如下:



var path = Forguncy.Helper.SpecialPath.getImageEditorUploadImageFolderPath();
Forguncy.CommandHelper.setVariableValue("图片路径", path);


注意:不要写死/Forguncy/GeneratedResources/Images/GenerateImages/ImageCellType/




successit 发表于 2024-5-10 19:45:27

易水寒 发表于 2024-5-10 18:04
直接使用Forguncy.Helper.SpecialPath.getImageEditorUploadImageFolderPath(); ...

大佬,这我尝试过类似的方案,由于EL菜单图标绑定的表字段值,且不可设置变量引用,所以我当时是用JS取的应用名,本地取出来是Forguncy,服务器取的是对应的应用名,然后写个视图,把分别用2个应用名做菜单表类型,视图里把不同应用的菜单图标路径分好,然后在EL菜单设置查询条件,类型等于页面单元格中通过页面加载命令获取到的当前应用名称,也是不行,总会乱加载,不懂是不是页面加载的优先级问题

successit 发表于 2024-5-10 19:49:53

Grayson.Shang 发表于 2024-5-10 18:37
感谢大佬支持,当时确实没有考虑到,应用发布后的情况。

我这边分析了一下,若是想要随着发布不同的应用 ...

感谢!可以试试附件形式

Simon.Sun 发表于 2024-5-11 11:02:24

感谢大佬们的支持!
如果您的问题已解决,请及时更新帖子的状态为“已处理”,并设置最佳答案给有帮助到你的回复;
如果您的问题还未解决,欢迎跟帖补充;
如果您有新的问题,也欢迎创建新的求助帖呦。

successit 发表于 2024-5-11 11:27:24

如果官方能出一个从根本上解决的方案就最好了,这个对你们来说应该是相当简单的事情 :lol

Nathan.guo 发表于 2024-5-11 15:15:49

successit 发表于 2024-5-11 11:27
如果官方能出一个从根本上解决的方案就最好了,这个对你们来说应该是相当简单的事情

那就需要大佬去需求板块提需求啦,就像大佬说的,只要需求合理,相信实现起来也很快~~
页: [1]
查看完整版本: 9.0.103 EL菜单数据源外联时,设计器和服务器图标设置如何同步