diff --git a/packages/frontend/core/src/modules/doc-info/views/database-properties/doc-database-backlink-info.tsx b/packages/frontend/core/src/modules/doc-info/views/database-properties/doc-database-backlink-info.tsx
index c298306f6..baa3d57c8 100644
--- a/packages/frontend/core/src/modules/doc-info/views/database-properties/doc-database-backlink-info.tsx
+++ b/packages/frontend/core/src/modules/doc-info/views/database-properties/doc-database-backlink-info.tsx
@@ -6,11 +6,12 @@ import {
} from '@affine/component';
import { AffinePageReference } from '@affine/core/components/affine/reference-link';
import { DocService } from '@affine/core/modules/doc';
+import { TemplateDocService } from '@affine/core/modules/template-doc';
import { useI18n } from '@affine/i18n';
import type { DatabaseBlockDataSource } from '@blocksuite/affine/blocks/database';
import { DatabaseTableViewIcon, PageIcon } from '@blocksuite/icons/rc';
import { LiveData, useLiveData, useService } from '@toeverything/infra';
-import { Fragment, useMemo } from 'react';
+import { useMemo } from 'react';
import type { Observable } from 'rxjs';
import { DocDatabaseBacklinksService } from '../../services/doc-database-backlinks';
@@ -96,13 +97,24 @@ const DatabaseBacklinkRow = ({
useMemo(() => LiveData.from(row$, undefined), [row$])
);
const sortedCells = useMemo(() => {
- return row?.cells.toSorted((a, b) => {
- return (a.property.name$.value ?? '').localeCompare(
- b.property.name$.value ?? ''
- );
- });
+ return row?.cells
+ .filter(cell => cell.property.id !== 'title')
+ .toSorted((a, b) => {
+ return (a.property.name$.value ?? '').localeCompare(
+ b.property.name$.value ?? ''
+ );
+ });
}, [row?.cells]);
const t = useI18n();
+ const templateDocService = useService(TemplateDocService);
+
+ const isTemplateDoc = useLiveData(
+ useMemo(
+ () =>
+ row?.docId ? templateDocService.list.isTemplate$(row.docId) : undefined,
+ [row?.docId, templateDocService.list]
+ )
+ );
const pageRefParams = useMemo(() => {
const params = new URLSearchParams();
@@ -112,52 +124,55 @@ const DatabaseBacklinkRow = ({
return params;
}, [row]);
- if (!row || !sortedCells) {
+ if (!row || !sortedCells || sortedCells.length === 0 || isTemplateDoc) {
return null;
}
return (
-