2011-10-07 14 views
7

tengo este sistema en el que yo uso ActiveAdmin para automatizar el back-end y me preguntaba si alguien trató de usar la edición in situ con mesas para ActiveAdmin.ActiveAdmin y en el lugar de edición

veo algunos escenarios en los que sería útil: tablas de valores clave (como el Estado, categoría, etc.) y en las vistas de maestro-detalle (Orden y artículos de pedido) ...

tienen a nadie intentado poner en práctica ¿eso? ¿Algún buen puntero?

Respuesta

9

Hemos utilizado best_in_place Editor pero sólo en vistas personalizadas, no en los genéricos.

https://github.com/bernat/best_in_place

gem "best_in_place" 
bundle 
rails g best_in_place:setup 

Añadir el guión best_in_place a /app/assets/javascripts/active_admin.js:

//= require best_in_place 

$(document).ready(function() { 
    /* Activating Best In Place */ 
    jQuery(".best_in_place").best_in_place() }); 

en su aduana vista parcial puede tener algo como

.panel 
    %h3 Your Resource Table 
    .panel_contents 
    .attributes_table 
     %table 
     %tbody 
      %tr 
      %th Name 
      %td= best_in_place resource, :name, :type => :input, :path => [:admin, resource] 
      ... 
      ... 

Como ActiveAdmin ya ha configurado su REST Acciones y BestInPlace utiliza RES PUT Tful actualizar también, todo debería funcionar automáticamente :)

Usted puede también puede usar algo como esto, pero no he probado esto todavía.

index do 
    column(:name) { |i| best_in_place i, :name, :type => :input, :path => [:admin, i] } 
end 
+0

he logrado utilizar ese mismo plug-in en los genéricos, con cambios menores. También podría publicar un blog cuando dejé de ser perezoso al respecto :) ¡Gracias! – kolrie

+0

Esto es asombroso. @kolrie Estoy interesado en ver cómo lo hizo para trabajar con los genéricos, ¿tuvo que aplicar el parche ActiveAdmin? – David

+0

Impresionante. funcionó para mí también – RailsTweeter

5

realidad mejor en lugar de parches mono para las vistas de administración activa es muy fácil:

# app/admin/active_admin/views.rb 
module ActiveAdmin::ViewHelpers 
    extend BestInPlace::BestInPlaceHelpers 
end 
+1

todavía funciona a partir de 3.1.0, pero desea 'BestInPlace :: Helper' – sbeam

Cuestiones relacionadas