Pergunta

Eu estou usando o gem acts_as_audited com o meu pedido. (Excelente jóia para manter o controle de alterações de objetos do modelo)

Pediram-me para apoiar associar um comentário de texto com cada registro de auditoria (funcionalidade semelhante ao svn commit). E eu estou perplexo sobre como fazer isso.

Por exemplo. Vamos dizer que eu tenho um formulário de endereço, e o usuário atualiza Cidade e Estado, após bater salvar eu pedir-lhe para fornecer um comentário. Eu gostaria que o comentário informações associadas com o registro de auditoria que é criado.

faz sentido?

Obrigado por sua ajuda,

Jonathan

Foi útil?

Solução

Eu pensei que esta seria uma coisa útil. Então, eu bifurcada e remendado o plugin mim.

Editar meu fork foi incorporada pela repositório acts_as_audited oficial. A documentação de uso contidas neste post é agora aplicável a baunilha acts_as_audited. Eu mudei as ligações neste post para apontar lá. Obter o repositório oficial, porque o meu não será atualizado com patches de upstream. Eu atualizei a documentação de uso neste post para refletir melhorias.

Instale-o como um plugin:

rails_root$ script/plugin install git://github.com/collectiveidea/acts_as_audited.git

Uso realmente não mudar de baunilha acts_as_audited.

acts_as_audited leva uma opção extra agora. :. Require_comment, que se for verdade, blocos de criação, atualização ou destruição de um modelo auditado menos que um comentário é fornecido

Para adicionar um comentário a um uso model.audit_comment= "My Comment" auditoria antes de criar / atualizar / destruir.

audit_comment também pode ser atribuído a massa tornando simples a adicionar um comentário campo a qualquer forma.

Antes de poder usar a minha jóia / plugin você precisa atualizar a tabela de auditoria para conter um comentário coluna. Se seu está atualizando a partir de uma versão mais antiga do acts_as_audited que não tem um campo de comentários sobre a mesa de auditoria, atualizar o plugin script/generate audited_migration_update update_audits_table em seguida, executar. Caso contrário, você está pronto para ir.

Com a gema / plugin tudo o que seria necessário para mudar através do seu exemplo de endereço adicionando um campo audit_comment ao seu formulário.

<%form_for @address do |f| %>
  ... standard address fields
  <%= f.label_for :audit_comment %>
  <%= f.text_field :audit_comment %>
<% end %>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top