Skip to content

Commit da0be4b

Browse files
authored
fix: URL 404 (#3460)
1 parent 9166528 commit da0be4b

File tree

6 files changed

+20
-19
lines changed

6 files changed

+20
-19
lines changed

apps/application/migrations/0001_initial.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ class Migration(migrations.Migration):
4545
('model_params_setting', models.JSONField(default=dict, verbose_name='模型参数相关设置')),
4646
('tts_model_params_setting', models.JSONField(default=dict, verbose_name='模型参数相关设置')),
4747
('problem_optimization', models.BooleanField(default=False, verbose_name='问题优化')),
48-
('icon', models.CharField(default='/ui/favicon.ico', max_length=256, verbose_name='应用icon')),
48+
('icon', models.CharField(default='./favicon.ico', max_length=256, verbose_name='应用icon')),
4949
('work_flow', models.JSONField(default=dict, verbose_name='工作流数据')),
5050
('type', models.CharField(choices=[('SIMPLE', '简易'), ('WORK_FLOW', '工作流')], default='SIMPLE', max_length=256, verbose_name='应用类型')),
5151
('problem_optimization_prompt', models.CharField(blank=True, default='()里面是用户问题,根据上下文回答揣测用户问题({question}) 要求: 输出一个补全问题,并且放在<data></data>标签中', max_length=102400, null=True, verbose_name='问题优化提示词')),

apps/application/serializers/application.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -539,7 +539,7 @@ def to_application(application, workspace_id, user_id):
539539
model_params_setting=application.get('model_params_setting'),
540540
tts_model_params_setting=application.get('tts_model_params_setting'),
541541
problem_optimization=application.get('problem_optimization'),
542-
icon="/ui/favicon.ico",
542+
icon="./favicon.ico",
543543
work_flow=work_flow,
544544
type=application.get('type'),
545545
problem_optimization_prompt=application.get('problem_optimization_prompt'),

ui/src/layout/components/breadcrumb/index.vue

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33
<back-button :to="toBackPath" class="mt-4"></back-button>
44
<div class="flex align-center">
55
<el-avatar
6-
v-if="isApplication && isAppIcon(current?.icon)"
6+
v-if="isApplication"
77
shape="square"
88
:size="24"
99
style="background: none"
1010
class="mr-8"
1111
>
12-
<img :src="current?.icon" alt="" />
12+
<img :src="resetUrl(current?.icon, resetUrl('./favicon.ico'))" alt="" />
1313
</el-avatar>
1414
<LogoIcon
1515
v-else-if="isApplication"
@@ -27,7 +27,7 @@
2727
<script setup lang="ts">
2828
import { ref, onMounted, computed } from 'vue'
2929
import { onBeforeRouteLeave, useRouter, useRoute } from 'vue-router'
30-
import { isAppIcon } from '@/utils/common'
30+
import { isAppIcon, resetUrl } from '@/utils/common'
3131
import { loadSharedApi } from '@/utils/dynamics-api/shared-api'
3232
import useStore from '@/stores'
3333
const { common, application } = useStore()

ui/src/utils/common.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,3 +70,10 @@ export function isAppIcon(url: string | undefined) {
7070
export function isFunction(fn: any) {
7171
return typeof fn === 'function'
7272
}
73+
74+
export const resetUrl = (url: string, defaultUrl?: string) => {
75+
if (url && url.startsWith('./')) {
76+
return `${window.MaxKB.prefix}/${url.substring(2)}`
77+
}
78+
return url ? url : defaultUrl ? defaultUrl : ''
79+
}

ui/src/views/application-overview/index.vue

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,10 @@
1414
@mouseenter="showEditIcon = true"
1515
@mouseleave="showEditIcon = false"
1616
>
17-
<el-avatar
18-
v-if="isAppIcon(detail?.icon)"
19-
shape="square"
20-
:size="32"
21-
style="background: none"
22-
>
23-
<img :src="detail?.icon" alt="" />
17+
<el-avatar shape="square" :size="32" style="background: none">
18+
<img :src="resetUrl(detail?.icon, resetUrl('./favicon.ico'))" alt="" />
2419
</el-avatar>
2520

26-
<LogoIcon v-else height="32px" />
2721
<el-avatar
2822
v-if="showEditIcon"
2923
shape="square"
@@ -224,7 +218,7 @@ import applicationApi from '@/api/application/application'
224218
import { nowDate, beforeDay } from '@/utils/time'
225219
import { MsgSuccess, MsgConfirm } from '@/utils/message'
226220
import { copyClick } from '@/utils/clipboard'
227-
import { isAppIcon } from '@/utils/common'
221+
import { isAppIcon, resetUrl } from '@/utils/common'
228222
import { mapToUrlParams } from '@/utils/application'
229223
import useStore from '@/stores'
230224
import { t } from '@/locales'

ui/src/views/tool/component/ToolListContainer.vue

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -154,13 +154,13 @@
154154
>
155155
<template #icon>
156156
<el-avatar
157-
v-if="isAppIcon(item?.icon)"
157+
v-if="item?.icon"
158158
shape="square"
159159
:size="32"
160160
style="background: none"
161161
class="mr-8"
162162
>
163-
<img :src="item?.icon" alt="" />
163+
<img :src="resetUrl(item?.icon)" alt="" />
164164
</el-avatar>
165165
<el-avatar v-else class="avatar-green" shape="square" :size="32">
166166
<img src="@/assets/node/icon_tool.svg" style="width: 58%" alt="" />
@@ -310,7 +310,7 @@ import ToolFormDrawer from '@/views/tool/ToolFormDrawer.vue'
310310
import CreateFolderDialog from '@/components/folder-tree/CreateFolderDialog.vue'
311311
import AuthorizedWorkspace from '@/views/system-shared/AuthorizedWorkspaceDialog.vue'
312312
import MoveToDialog from '@/components/folder-tree/MoveToDialog.vue'
313-
import { isAppIcon } from '@/utils/common'
313+
import { isAppIcon, resetUrl } from '@/utils/common'
314314
import { MsgSuccess, MsgConfirm, MsgError } from '@/utils/message'
315315
import { SourceTypeEnum } from '@/enums/common'
316316
import ToolStoreDialog from '@/views/tool/toolStore/ToolStoreDialog.vue'
@@ -372,7 +372,7 @@ const MoveToDialogRef = ref()
372372
function openMoveToDialog(data: any) {
373373
const obj = {
374374
id: data.id,
375-
folder_id: data.folder
375+
folder_id: data.folder,
376376
}
377377
MoveToDialogRef.value?.open(obj)
378378
}
@@ -631,7 +631,7 @@ onMounted(() => {
631631
if (apiType.value !== 'workspace') {
632632
getList()
633633
}
634-
loadSharedApi({type: 'workspace', isShared: isShared.value, systemType: apiType.value })
634+
loadSharedApi({ type: 'workspace', isShared: isShared.value, systemType: apiType.value })
635635
.getAllMemberList(user.getWorkspaceId(), loading)
636636
.then((res: any) => {
637637
user_options.value = res.data

0 commit comments

Comments
 (0)