使用拖放功能的Umbraco 7媒体上载问题

使用拖放功能的Umbraco 7媒体上载问题,umbraco,umbraco7,Umbraco,Umbraco7,当我尝试使用Umbraco拖放功能上载多个图像时,我发现alias Umbraco文件中不存在任何属性类型。我有自定义媒体类型顶部横幅和别名横幅。上载图像时,它使用自定义媒体类型作为contentTypeAlias。自定义媒体类型没有名为umbracoFile的属性。所以,我需要改变这种行为。我需要使用默认文件/图像媒体类型上载图像。我怎样才能做到呢 我已经创建了一个新的媒体类型“Top Banner”(别名:Banner)和Banner媒体类型的属性 标题(文本字符串) 横幅图像(图像裁剪器)

当我尝试使用Umbraco拖放功能上载多个图像时,我发现alias Umbraco文件中不存在任何属性类型。我有自定义媒体类型顶部横幅和别名横幅。上载图像时,它使用自定义媒体类型作为contentTypeAlias。自定义媒体类型没有名为umbracoFile的属性。所以,我需要改变这种行为。我需要使用默认文件/图像媒体类型上载图像。我怎样才能做到呢

我已经创建了一个新的媒体类型“Top Banner”(别名:Banner)和Banner媒体类型的属性

  • 标题(文本字符串)
  • 横幅图像(图像裁剪器)
  • 图像(文件上传)
  • 链接(内容选择器)
  • 副标题((文本字符串))
  • 视频链接(文本字符串)
  • 居中(复选框)
  • 徽标(文件上传)
  • 链接文本为黑色布局(复选框)
  • 如果我将属性umbraco文件(属性类型:FileUpload)添加到Banner媒体类型中,则会上载文件,并且不会出现错误

    例外情况详情:

    别名为umbracoFile的属性类型不存在

    堆栈跟踪:

    at Umbraco.Core.IO.MediaFileSystem.GetProperty(IContentBase content, String propertyTypeAlias)
    at Umbraco.Core.IO.MediaFileSystem.SetUploadFile(IContentBase content, String propertyTypeAlias, String filename, Stream filestream)
    at Umbraco.Core.Models.ContentExtensions.SetValue(IContentBase content, String propertyTypeAlias, String filename, Stream filestream)
    at Umbraco.Web.Editors.MediaController.<PostAddFile>d__26.MoveNext()
    
    位于Umbraco.Core.IO.MediaFileSystem.GetProperty(IContentBase内容,字符串属性TypeAlias)
    位于Umbraco.Core.IO.MediaFileSystem.SetUploadFile(IContentBase内容、字符串属性TypeAlias、字符串文件名、流文件流)
    在Umbraco.Core.Models.ContentExtensions.SetValue(IContentBase内容、字符串属性TypeAlias、字符串文件名、流文件流)
    在Umbraco.Web.Editors.MediaController.d_u26.MoveNext()上
    


    这些是媒体类型


    好的,那么。现在发生的事情是,Umbraco试图通过两种方式确定媒体类型——首先,在JavaScript的客户端,它检查您要添加文件的特定文件夹中允许哪些媒体类型

    如果您有一个最新版本的Umbraco(大约从去年11月开始),如果您要上载到的文件夹有多个允许的类型,则应该可以选择将文件上载到哪个媒体类型,否则,它将根据您正在上载的文件的扩展名,以静默方式选择
    图像
    文件

    您收到的错误可能表明您在上载文件时选择了自定义的
    标题
    媒体类型,但可能没有为其设置必填字段


    你的财产别名是什么?您只列出了名称和类型。我猜您还没有将图像裁剪器的别名设置为
    umbracoFile
    ,您还应该将其他媒体别名设置为与
    图像
    媒体类型类似的标签。

    好吧。现在发生的事情是,Umbraco试图通过两种方式确定媒体类型——首先,在JavaScript的客户端,它检查您要添加文件的特定文件夹中允许哪些媒体类型

    如果您有一个最新版本的Umbraco(大约从去年11月开始),如果您要上载到的文件夹有多个允许的类型,则应该可以选择将文件上载到哪个媒体类型,否则,它将根据您正在上载的文件的扩展名,以静默方式选择
    图像
    文件

    您收到的错误可能表明您在上载文件时选择了自定义的
    标题
    媒体类型,但可能没有为其设置必填字段


    你的财产别名是什么?您只列出了名称和类型。我的猜测是,您没有将图像裁剪器设置为别名为
    umbracoFile
    ,您还应该将其他媒体别名设置为类似于
    Image
    媒体类型的标签。

    根据Robert的评论,我已经更新了\Umbraco\lib\ng file upload\ng-file-upload.min.js文件(未统一文件的行号为185)


    根据Robert的评论,我已经更新了\Umbraco\lib\ng file upload\ng-file-upload.min.js文件(未统一文件的行号为185)


    您能描述一下对媒体类型所做的更改吗?文件夹类型是否仍允许在其中创建媒体和文件类型?它允许自定义横幅类型吗?横幅上的属性是什么?如果你能提供完整的堆栈跟踪也会有帮助。请找到我的评论内联。1) 您能描述一下对媒体类型所做的更改吗?我已经创建了一个新的媒体类型“Top Banner”(别名:Banner)2)文件夹类型是否仍然允许在其中创建媒体和文件类型?是,它允许自定义横幅类型吗?是的,我们可以在文件夹类型下创建图像、文件和顶部横幅3)横幅上的属性是什么?标题(文本字符串)、横幅图像(图像裁剪器)、图像(文件上载)、链接(内容选择器)、字幕(文本字符串)、视频链接(文本字符串)、居中(复选框)、徽标(文件上载)是链接文本的黑色布局(复选框)你能用额外的细节更新你的问题吗?评论中的这些内容让人有点难以理解……你能描述一下对媒体类型所做的更改吗?文件夹类型是否仍允许在其中创建媒体和文件类型?它允许自定义横幅类型吗?横幅上的属性是什么?如果你能提供完整的堆栈跟踪也会有帮助。请找到我的评论内联。1) 您能描述一下对媒体类型所做的更改吗?我已经创建了一个新的媒体类型“Top Banner”(别名:Banner)2)文件夹类型是否仍然允许在其中创建媒体和文件类型?是,它允许自定义横幅类型吗?是的,我们可以在文件夹类型下创建图像、文件和顶部横幅3)横幅上的属性是什么?标题(文本字符串)、横幅图像(图像裁剪器)、图像(文件上传)
                    if (h == "Banner") {// my custom media type alias is Banner
                        var regexp = /(?:\.([^.]+))?$/;
                        var ext = regexp.exec(a.file.name)[1];
                        ext = ext.toLowerCase();
                        var imageExtensions = ["png", "jpeg", "gif","jpg"];
                        if (imageExtensions.indexOf(ext)>-1) {
                            h = "Image";
                        }
                        var fileExtensions = ["pdf", "doc", "gif", "xls", "xlsx", "odt", "ods", "ppt", "pptx", "txt", "zip", "svg", "csv"];
                        if (fileExtensions.indexOf(ext) > -1) {
                            h = "File";
                        }
                        console.log(ext);
                    }