2

OrchardCMSにデータをインポートしようとしています。パーツとフィールドで構成されるカスタムタイプがあり、ImportExportモジュールを使用しています。XMLスキーマが正しいことを確認するために、Orchardからいくつかのデータをエクスポートしましたが、インポートするときに、入力されているように見えるフィールドはTitlePartTitleだけです。各レコードの識別子のGUIDをランダムに生成しました。オーチャード1.4、ImportExport1.4。

1つのデータ項目の例:

<Orchard>
  <Recipe>
    <Name>Data Import</Name>
    <Author>myaccount</Author>
  </Recipe>
  <Data>
    <OurPropertiesDivision Id="/Identifier=94eff3237c714f98b021905c33d25ea9" Status="Published">
      <LinkField.Link Text="This is a link" Url="http://stackoverflow.com" />
      <MediaPickerField.ImageOne Url="~/test.jpg" Width="100" Height="100" />
      <MediaPickerField.ImageTwo Url="~/test2.jpg" Width="100" Height="100" />
      <MediaPickerField.ImageThree Url="~/test3.jpg" Width="100" Height="100" />
      <TitlePart Title="Test Title" />
      <CommonPart Owner="/User.UserName=myaccount" CreatedUtc="2012-04-04T23:03:39Z" PublishedUtc="2012-04-04T23:03:39Z" ModifiedUtc="2012-04-04T23:03:39Z" />
      <IdentityPart Identifier="94eff3237c714f98b021905c33d25ea9" />
    </OurPropertiesDivision>
  </Data>
</Orchard>

これにより、インポートされたエントリを見ると次のようになります。

コンテンツリスト:

オーチャードコンテンツリスト

画面の編集:

オーチャード編集画面

インポートを通過している唯一のフィールドはTitlePartです。あらゆるタイプのフィールドまたはパーツにデータを一括挿入できるように、これを機能させるにはどうすればよいですか?また、Containable部分のContainerをキャプチャしたいと思います。

編集:コンテンツタイプのメタデータを追加する

<?xml version="1.0"?>
<!--Exported from Orchard-->
-<Orchard>
  -<Recipe>
    <Name>Generated by Orchard.ImportExport</Name>
    <Author>myaccount</Author>
  </Recipe> -<Metadata>
    -<Types>
      -<OurPropertiesDivision DisplayName="Our Properties - Division" ContentTypeSettings.Draftable="True" ContentTypeSettings.Creatable="True">
        <CommonPart DateEditorSettings.ShowDateEditor="False" OwnerEditorSettings.ShowOwnerEditor="False"/>
        <TitlePart/>
        <OurPropertiesDivision/>
        <ContainablePart/>
        <IdentityPart/>
      </OurPropertiesDivision>
    </Types> -<Parts>
      <CommonPart ContentPartSettings.Attachable="True"/> <TitlePart ContentPartSettings.Attachable="True"/> -<OurPropertiesDivision ContentPartSettings.Attachable="True">
        <ImageOne.MediaPickerField DisplayName="Image One" MediaPickerFieldSettings.Required="False" HtmlFieldSettings.FlavorDefault="html"/>
        <ImageTwo.MediaPickerField DisplayName="Image Two" MediaPickerFieldSettings.Required="False" HtmlFieldSettings.FlavorDefault="html"/>
        <ImageThree.MediaPickerField DisplayName="Image Three" MediaPickerFieldSettings.Required="False" HtmlFieldSettings.FlavorDefault="html"/>
        <Content.HtmlField DisplayName="Content" HtmlFieldSettings.FlavorDefault="html"/>
        <Link.LinkField DisplayName="Link" HtmlFieldSettings.FlavorDefault="html" LinkFieldSettings.LinkTextMode="Required" LinkFieldSettings.TargetMode="NewWindow" LinkFieldSettings.Required="True"/>
      </OurPropertiesDivision> <ContainablePart ContentPartSettings.Attachable="True"/> <IdentityPart ContentPartSettings.Attachable="True"/>
    </Parts>
  </Metadata>
</Orchard>
4

1 に答える 1

0

最終的に、管理者によって生成されたデータベース挿入を分析し、SQLにデータを手動でインポートしました。

于 2012-05-23T14:55:22.083 に答える