Я разрабатываю приложение, которое требует ограничения данных для определенных пользователей. Я использую Spring Security Core для управления пользователями. Мне нужно получить ссылку на зарегистрированного пользователя, чтобы выполнить некоторые операции фильтрации. Рассмотрим этот код:Grails - Получить ссылку на зарегистрированного пользователя в представлениях
class Cliente {
Deposito deposito
String ci
String nombre
String telefono
String celular
static constraints = {
...
}
}
class Empresa {
Deposito deposito
String tipoDeEmpresa
String nombreDeEmpresa
String departamento
String provincia
String municipio
static constraints = {
...
}
}
class SecUser implements Serializable {
private static final long serialVersionUID = 1
Deposito deposito
String nombre
String username
String password
boolean enabled = true
boolean accountExpired
boolean accountLocked
boolean passwordExpired
...
}
мне нужна помощь с этим фрагментом GSP (генерируется form.gsp
вида) Код:
<div class="fieldcontain ${hasErrors(bean: clienteInstance, field: 'empresa', 'error')} required">
<label for="empresa">
<g:message code="cliente.empresa.label" default="Empresa"/>
<span class="required-indicator">*</span>
</label>
<g:select id="empresa" name="empresa.id" from="${org.socymet.proveedor.Empresa.findAllByDeposito(loggedUser.deposito,[sort: 'nombreDeEmpresa'])}" optionKey="id" required="" value="${clienteInstance?.empresa?.id}" class="many-to-one"/>
</div>
В строке, где Empresa.findAllByDeposito(loggedUser.deposito,[sort: 'nombreDeEmpresa'])
искатель называется мне нужно заменить loggedUser с эффективный и правильный код для получения ссылки на текущего зарегистрированного пользователя.
Я пытался реализовать метод в классе домена Cliente
, но я думаю, что это не очень хорошая практика.
Заранее спасибо.
Мне нужно получить список Empresas с учетом депозита (которому принадлежит зарегистрированный пользователь). –