Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Orchardcms 导入分类术语时出现错误的别名模式_Orchardcms_Orchardcms 1.8 - Fatal编程技术网

Orchardcms 导入分类术语时出现错误的别名模式

Orchardcms 导入分类术语时出现错误的别名模式,orchardcms,orchardcms-1.8,Orchardcms,Orchardcms 1.8,我正试图利用导入/导出模块来导入分类法和分类术语,就像这样 <Orchard> <Data> <Taxonomy Id="/Identifier=Product-Categories" Status="Published"> <AutoroutePart Alias="eshop/categories" UseCustomPattern="false" /> <IdentityPart Identifier

我正试图利用导入/导出模块来导入分类法和分类术语,就像这样

<Orchard>
  <Data>
    <Taxonomy Id="/Identifier=Product-Categories" Status="Published">
      <AutoroutePart Alias="eshop/categories" UseCustomPattern="false" />
      <IdentityPart Identifier="Product-Categories" />
      <TitlePart Title="Product Categories" />
      <TaxonomyPart TermTypeName="ProductCategoriesTerm" />
    </Taxonomy>
    <ProductCategoriesTerm Id="/Identifier=Category-1" Status="Published">
      <AutoroutePart UseCustomPattern="false" />
      <IdentityPart Identifier="Category-1" />
      <TitlePart Title="Test category" />
      <TermPart Count="0" Selectable="true" Weight="1" TaxonomyId="/Identifier=Product-Categories" Path="" />
    </ProductCategoriesTerm>
  </Data>
</Orchard>
但是导入术语使它们只使用{Content.Slug}。。。如何指示AutoroutePart使用默认模式?Twired UseCustomPattern=false或排除AutoroutePart无效它只是测试类别而不是eshop/categories/test类别,即使我在编辑内容时将AutouroutePart设置为自动重新生成并禁用自定义模式,它也不会恢复为默认模式,即使我尝试通过仪表板


此外,在导入时,必须包含TermPart的计数,这是否会影响任何内容?听起来应该是动态的,并且只与导出相关。

导入分类术语时,我想任何其他具有容器的部件都需要为公共部件指定容器。没有它,部件的容器为空,因此无法解析别名模式中的{Content.Container.Path}

<CommonPart Container="/Identifier=Product-Categories" />

或者,如果是嵌套术语,则容器是父术语。

如果您有自动路由部件,则必须在导入期间指定别名。导入期间不必指定别名,而是生成别名。但要使其正常工作,我必须指定容器。在果园里我还在学习:。好吧,让我重新表述一下:它应该。如果未指定,则该行为未指定。换句话说,任何事情都可能发生,因为它不是受支持的场景。至少是AFAIK。实际上,别名生成行为是指定的,默认情况下,在该内容类型的AutoroutePart上设置了模式。通过在导入过程中指定alias,它会忽略此模式,这反过来会导致问题。我认为最好避免自定义别名,让它们遵循统一的模式,它应该提供更好的控制,以防您需要更改别名组成,您可以只更新模式,它可以轻松传播到所有别名。实际上,在导入过程中不是这样,因为别名也是身份。通过在导入过程中指定别名,可以指定内容项的标识,从而避免以后出现问题。例如,您可以重新导入相同的项,而不获取重复项。我知道有必要在导入文件中指定可靠的标识,因为这是我们设计它的方式。导入项目时,您不是根据模糊的规范创建新项目,而是创建现有项目的精确副本。
<CommonPart Container="/Identifier=Product-Categories" />