我正在尝试使用Grails来托管一个简单的(个人)网站,并且正在寻找一种方法来禁用(或密码保护它们)控制器显示域对象的添加和编辑按钮。
我的控制器看起来像这样:
class DownloadsController {
static scaffold = Download
}
My Domain Class如下所示:
class Download {
static mapping = {
}
static constraints = {
link(url: true)
}
String name
String link
}
有什么想法吗?
答案 0 :(得分:1)
如果您使用的是Spring安全插件,则可以保护控制器中edit
和add
(以及POST
网址)的网址。见http://grails-plugins.github.io/grails-spring-security-core/docs/manual/guide/5%20Configuring%20Request%20Mappings%20to%20Secure%20URLs.html
如果您不使用Spring Security,您可能需要考虑它,因为它似乎很符合您的要求。您还可以在视图中使用方便的标记(请参阅http://grails-plugins.github.io/grails-spring-security-core/docs/manual/guide/6%20Helper%20Classes.html)
答案 1 :(得分:0)
对于快速而肮脏的解决方案,您可以覆盖控制器中的编辑/添加脚手架操作,如下所示:
class DownloadsController {
static scaffold = Download
//override scaffolded edit
def edit() {
redirect(action: "list")
}
//override scaffolded add
def add() {
redirect(action: "list")
}
}
如果您需要更复杂的解决方案,请查看spring security core plugin