Kentico - 自定义页面类型页面的 WHERE 条件
Kentico - WHERE condition for custom Page Types page
我有一个针对员工的自定义页面类型,其中一个字段是 位置。我只想 show/filter "San Jose" 或 "San Francisco" 中的员工,并在下面使用了这个 WHERE 条件,但它没有用。显然,我错过了一些非常基本的东西。你能帮忙吗?
Location LIKE '%San%';
我做了另一个测试,我使用自定义 table 和确切的字段名称代替页面类型,并且能够使用相同的语句进行过滤。在相关说明中,我是 Kentico 的新手,正在探索 creating/maintaining 哪个更适合 table 大约 100 名员工的列表 - 页面类型或自定义表格 - 能够按部门,位置过滤等。也感谢您在这里的输入。最好!
如果您将 WHERE 条件添加到标准 Kentico 转发器或其他数据源中,除了不需要分号“;”外,语法看起来是正确的。
您还需要仔细检查字段名称,如果您将查询限制在某些列(这是最佳做法,尤其是对于较大的数据集)并确保您筛选的字段被选中.
关于员工名单的管理,您描述的任何一种方法都可以。在那种情况下,它通常取决于谁将编辑内容,以及编辑频率。在我看来,将这些文档添加到内容树中对编辑器更友好。这也使您可以更快地控制订单,并使其与网站上其他内容的维护方式保持相似。如果需要,我还喜欢将文件夹或其他父页面类型设置为类别,这样文档就可以在它们之间拖放,并且它设置了一个视觉分类法,如果它全部存储在 table 中是不可能的.在树中存储项目还允许 工作流和版本控制, 以及对 permissions/access 的更精细控制,如果这对您很重要的话。
您正在考虑如何提前最好地存储数据,这真是太棒了。有很多因素需要考虑,例如记录总数、列数、是否需要使用工作流、版本控制、预览等。
关于此的最佳信息来源是 this 文章,该文章总结了您拥有的所有选项,并给出了在哪种情况下使用哪些选项的清晰解释。
关于您最初的问题 - 您使用哪些组件来显示数据?是复读机吗?如果是这样,您能否确保设置 页面类型 属性 以匹配您正在显示的页面类型?如果未配置页面类型,Kentico 将不会加载任何自定义字段,因为它不知道应该从哪个 table 加载数据。
另外确保在 列 属性 中包含 "Location" 字段或将列留空(不推荐,因为 Kentico 会加载 所有列,就像 200。当你从 CMS_Document、CMS_Tree 等中计算所有内容时。)
以下是每当我想添加中继器并遇到一些问题时用来调试的框架。
首先获取所有的列,而不是访问有限的列。获取所有列将确保我在检索数据时没有任何问题。
如果我遗漏了任何特定的列信息名称,那么我会仔细检查列名称。
我通过启动 SQL 服务器管理工作室并从页面类型 table 或自定义 table.
[= 访问数据来验证这一点25=]
如果无法访问 SQL 服务器(通常在 Azure 托管解决方案中限制访问数据库),我会从设置中启用 SQL 调试并查看什么正在生成查询转发器以查看它是否正确。
我有一个针对员工的自定义页面类型,其中一个字段是 位置。我只想 show/filter "San Jose" 或 "San Francisco" 中的员工,并在下面使用了这个 WHERE 条件,但它没有用。显然,我错过了一些非常基本的东西。你能帮忙吗?
Location LIKE '%San%';
我做了另一个测试,我使用自定义 table 和确切的字段名称代替页面类型,并且能够使用相同的语句进行过滤。在相关说明中,我是 Kentico 的新手,正在探索 creating/maintaining 哪个更适合 table 大约 100 名员工的列表 - 页面类型或自定义表格 - 能够按部门,位置过滤等。也感谢您在这里的输入。最好!
如果您将 WHERE 条件添加到标准 Kentico 转发器或其他数据源中,除了不需要分号“;”外,语法看起来是正确的。
您还需要仔细检查字段名称,如果您将查询限制在某些列(这是最佳做法,尤其是对于较大的数据集)并确保您筛选的字段被选中.
关于员工名单的管理,您描述的任何一种方法都可以。在那种情况下,它通常取决于谁将编辑内容,以及编辑频率。在我看来,将这些文档添加到内容树中对编辑器更友好。这也使您可以更快地控制订单,并使其与网站上其他内容的维护方式保持相似。如果需要,我还喜欢将文件夹或其他父页面类型设置为类别,这样文档就可以在它们之间拖放,并且它设置了一个视觉分类法,如果它全部存储在 table 中是不可能的.在树中存储项目还允许 工作流和版本控制, 以及对 permissions/access 的更精细控制,如果这对您很重要的话。
您正在考虑如何提前最好地存储数据,这真是太棒了。有很多因素需要考虑,例如记录总数、列数、是否需要使用工作流、版本控制、预览等。
关于此的最佳信息来源是 this 文章,该文章总结了您拥有的所有选项,并给出了在哪种情况下使用哪些选项的清晰解释。
关于您最初的问题 - 您使用哪些组件来显示数据?是复读机吗?如果是这样,您能否确保设置 页面类型 属性 以匹配您正在显示的页面类型?如果未配置页面类型,Kentico 将不会加载任何自定义字段,因为它不知道应该从哪个 table 加载数据。
另外确保在 列 属性 中包含 "Location" 字段或将列留空(不推荐,因为 Kentico 会加载 所有列,就像 200。当你从 CMS_Document、CMS_Tree 等中计算所有内容时。)
以下是每当我想添加中继器并遇到一些问题时用来调试的框架。
首先获取所有的列,而不是访问有限的列。获取所有列将确保我在检索数据时没有任何问题。
如果我遗漏了任何特定的列信息名称,那么我会仔细检查列名称。
我通过启动 SQL 服务器管理工作室并从页面类型 table 或自定义 table.
[= 访问数据来验证这一点25=]如果无法访问 SQL 服务器(通常在 Azure 托管解决方案中限制访问数据库),我会从设置中启用 SQL 调试并查看什么正在生成查询转发器以查看它是否正确。