Pergunta

Tutorial semelhante ao jogo para o conjunto de tags (personalizar o campo crud);Eu quero adicionar uma nova funcionalidade quando o usuário seleciona uma tag, então o javascript deve obter o usuário atual (models.user) e chamar um método user.doSomething ().isso é possível fazer em um campo personalizado CRUD?(como no tutorial para tags yabe?).

existe uma maneira de fazer um campo CRUD personalizado como uma lista de caixas de seleção e, quando o usuário marcar algumas caixas, devo escrever o código (talvez javascript) que obtém o usuário conectado no momento e, em seguida, chamar um método nesse modelo de usuário?

obrigado.

Foi útil?

Solução

Aqui está o exemplo do tutorial de jogo (personalizar o campo crud).Suponho que você deseja executar uma ação quando uma tag é clicada.isso pode ser feito simplesmente conforme mostrado abaixo

#{crud.form}
    #{crud.custom 'tags'}
        <label for="tags">
            &{'tags'}
        </label>
        (...)
        <div class="tags-list">
            #{list items:models.Tag.findAll(), as:'tag'}
               <span id="${tag.id}" onclick="toggle(this)" class="tag ${object.tags.contains(tag) ? 'selected' : ''}">
                     /**** ADD An ACTION CALL HERE ******/
                    <a href="@{Application.getConnected().doSomething()}">${tag}</a>
                     /**** END *****/
               </span> 
               <input id="h${tag.id}" type="hidden" name="${fieldName}" 
                        value="${object.tags.contains(tag) ? tag.id : ''}" />
            #{/list}
        </div>
    #{/crud.custom}
#{/crud.form}

você tem que implementar o método getConnected () sozinho em seu controlador (talvez Application.java).supondo que você use o Módulo seguro , será algo como

void getConnected(){ 
        if(Security.isConnected()) {
            User user = User.find("byEmail", Security.connected()).first();
            renderArgs.put("user", user);
        }

}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top