如果构建内部网,我们希望用户能够为自己的文档(例如,新闻项目、博客条目等)上传图片。然而,访问媒体似乎也允许用户替换现有媒体上的图像。
因此,他们大概可以更换家具(例如,网站标识等),因为这些都将在媒体文件夹中。
我理解用户可以为媒体树提供一个起始文件夹(类似于编辑文档),但是,这意味着编辑每个用户来设置他们的起点,因为似乎没有任何方法来实现这一点,例如通过角色或用户分组。
还有另一种解决方案(如以另一种方式保存家具,以便只有管理员可以编辑它们)吗?
发布于 2016-05-11 15:08:49
据我所知,没有一种方法可以将实际权限分配给媒体项目或文件夹。
但实际上,如果您有一种确定的方法可以知道要分配哪个启动节点给哪个用户,那么以编程的方式执行它并不困难:
var userService = UmbracoContext.Current.Application.Services.UserService;
var mediaService = UmbracoContext.Current.Application.Services.MediaService;
int total;
foreach (var user in userService.GetAll(0, 1000, out total))
{
int targetMediaId = 0;
switch(user.UserType.Id)
{
case 123:
targetMediaId = 3;
break;
case 234:
targetMediaId = 5;
break;
}
user.StartMediaId = targetMediaId;
userService.Save(user);
}
我使用UserType作为一个示例,说明您如何知道如何分配给谁,因为我不知道您最终会怎么说。原则上,您可以“轻松”地走到,我不知道,为每个用户创建一个媒体文件夹,并将其指定为他们的起始媒体节点。
https://stackoverflow.com/questions/37164413
复制相似问题