我正在尝试在Umbraco创建一个画廊。我想要的只是上传一堆图片,在每张图片上写一个可选的描述,用Razor拉出图像,最后将它们放在网站上。
我可以使用媒体选择器选择许多图像,然后执行此操作将其拉出:
var collection = Model.Content.GetPropertyValue<IEnumerable<IPublishedContent>>("images");
foreach (var image in collection) {
<img src="@image.Url" />
}
但如果我使用Media Picker,我无法在图像上输入描述。
我有一个想法,这有点愚蠢和缓慢:在我的Image
文档类型上创建一个名为Gallery
的子文档类型。然后,每个图像内容具有图像和描述。不过,这将是一种非常烦人的方式。
有更好的方法吗?
答案 0 :(得分:1)
如果您转到媒体部分,则可以更改之前上传的图像的名称,并将其用作说明。或者可以在mediatype图像上添加描述字段(如果它是一个长文本)。
<img src="@image.Url" alt="@image.Name" />
<img src="@image.Url" alt="@(image.GetPropertyValue<string>("description"))" />
此外,选择器的DataType中应该有一个标志来添加&#34; open&#34;选择器的功能,因此您在从内容切换到媒体树的过程中会更快