2015-11-26 25 views
5

Desidero personalizzare le seguenti cosePersonalizza Button e il successo del messaggio in Active Admin Rails

  1. azioni nome come "Aggiungi utente" => "Crea utente", "Modifica utente" => "Aggiornamento utente" ecc
  2. successo Messaggio su Elimina, creare e modificare come "utente creato con successo" => "cliente ha creato con successo"
  3. aggiungere un pulsante Crea Su Mostra pagina accanto modificare ed eliminare

risposta

4

Sì, è possibile.

azioni nome come "Aggiungi utente" => "Crea utente", "Modifica utente" => "Aggiornamento utente" ecc

Invece di avere f.actions, si potrebbe avere

<%= f.actions do %> 
    <%= f.action :submit, as: :button, label: 'Create User' %> 
    <%= f.action :cancel, as: :link %> # change it to button if needed 
<% end %> 

ActiveAdmin utilizza formtastic, read more here.

Successo Messaggio Su Elimina, creare e modificare come "utente con successo creato" => "cliente creato con successo"

def create # or any other action 
    super do |format| # this is important - override the original implementation 
    redirect_to(
     admin_users_path, 
     notice: 'Your custom message for successful user creation' 
    ) and return 
    end 
end 

Si potrebbe anche provare questo:

def create # or any other action 
    super do |format| # this is important - override the original implementation 
    flash[:notice] = 'Your custom message for successful user creation' 
    # you do understand, that if you have different routes you should change this, right? 
    redirect_to admin_users_path 
    end 
end 

Aggiungi un pulsante Crea nella pagina Mostra accanto a modifica ed elimina

action_item only: :show do 
    link_to 'Create new user', new_admin_users_path 
    end 
+0

1 e 2 non funziona .. .... In primo luogo, Annulla come collegamento In secondo luogo, non accade nulla – Mukesh

+0

Ho modificato la risposta, 1a - leggi la documentazione come suggerito e [ti ho dato il collegamento] (https://github.com/justinfrench/FormtastiC# la-storia). 2 dovrebbe funzionare, lo hai definito all'interno del blocco 'controller do end'? –

+0

Grazie mille Amico ... Ora tutto funziona ...... :) – Mukesh

3

sto aggiungendo risposta per secondo (refrence dall'alto), ma su errori di convalida di cui sopra non sta funzionando in modo che io personalizzarlo che può aiutare a meglio

controller do 

    def update 
     super do |format| 
     if [email protected]_object.errors.any? 
      redirect_to(
      admin_my_localities_path, 
      notice: 'custom message.' 
     ) and return 
     end 
     end 
    end 


    def destroy 
     super do |format| 
     if [email protected]_object.errors.any? 
      redirect_to(
      admin_my_localities_path, 
      notice: 'custom message.' 
     ) and return 
     else 
      redirect_to(
      admin_my_localities_path, 
      alert: 'custom error.' 
     ) and return 
     end 
     end 
    end 
end