Lipsiadmin Generatore di Admin per rails 2.0

Salve a tutti ragazzi,

volevo informarvi che ho rilasciato la versione pubblica dell’admin che
utilizziamo a livello societario per le nostre applicazioni web.

Credo sia molto interessante perché per il layout è interamente gestito
tramite il fantastico extjs framework quindi è possibile gestire griglie
alberi e quant’altro offre.

Non è intrusivo perché usa come connettore prototype ed è pensato sia
per gli utenti medi che per quelli esperti che necessitano di fare molte
personalizzazioni.

Gestisce automaticamente l’autenticazione pdf etc.

Non è interamente scritto in javascript questo perché uno dei motivi per
cui utilizziamo rails è per la sua "agilità " quindi i form ho preferito
tenerli ancora in html puro.

Se qualcuno fosse interessato potrete trovare maggiori dettagli qui:
http://blog.lipsiasoft.com

La documentazione invece è qui:
http://rails.lipsiasoft.com/wiki/lipsiadmin/Wiki

La live demo invece è qui: http://demoadmin.lipsiasoft.org/admin

User: info AT lipsiasoft.com
Pwd: admin

Potete giocare con la demo app scaricandola qui:
http://rails.lipsiasoft.com/versions/download/2?attachment_id=2

Ogni commento è apprezzato, se volte potete contribuire a migliorarlo
inviandomi bugs o request qui:

http://rails.lipsiasoft.com/projects/lipsiadmin/issues

Grazie!!!

— Ventura V. [email protected] wrote:

Ogni commento è apprezzato, se volte potete
contribuire a migliorarlo
inviandomi bugs o request qui:

Ma quanto vi amo. Provo domani a vedere se riesco a
integrarlo con un progetto che è già in fase
abbastanza avanzata di sviluppo e che usa uin bel po’
di feature di AR (STI, relazioni polimorfiche,
has_many :through, primary key non numeriche…)

Ti afrò sapere com’è andata :slight_smile:

PS
l’inglese su
http://rails.lipsiasoft.com/wiki/lipsiadmin/Wiki
ha qualche errore, se vuoi vi faccio una revisioncina
:slight_smile:


Goto 10: http://www.goto10.it
blog it: http://riffraff.blogsome.com
blog en: http://www.riffraff.info

  __________________________________________________________

Sent from Yahoo! Mail - a smarter inbox http://uk.mail.yahoo.com

gabriele renzi wrote:

PS
l’inglese su
http://rails.lipsiasoft.com/wiki/lipsiadmin/Wiki
ha qualche errore, se vuoi vi faccio una revisioncina
:slight_smile:

Hhehe accetto volentieri la revisoncina :wink:

Blade M. wrote:

molto molto bello
lo sto provando

ma non mi fa entrare con l email e la pass che ho messo in
db/migrate/001_create_accounts.rb

Fai questo check:

  1. password e password_confirmation siano uguali
  2. ti deve essere arrivata una mail di conferma , se cosi non fosse
    probabilmente non sei su linux quindi devi configurare
    nell’enviroment.rb la posta
  3. Attiva il tuo account e poi puoi entrare correttamente

Ventura V. wrote:

gabriele renzi wrote:

PS
l’inglese su
http://rails.lipsiasoft.com/wiki/lipsiadmin/Wiki
ha qualche errore, se vuoi vi faccio una revisioncina
:slight_smile:

Hhehe accetto volentieri la revisoncina :wink:

molto molto bello
lo sto provando

ma non mi fa entrare con l email e la pass che ho messo in
db/migrate/001_create_accounts.rb

Blade M. wrote:

mea culpa
non avevo visto la mail di conferma
funzia

ora lo testo per bene :smiley:
ti farò sapere :smiley:

Sono contentissimo

Mi raccomando ragazzi conto su di voi per migliorarlo.

Ho aperto dei forum ufficiali di supporto

http://rails.lipsiasoft.com/projects/lipsiadmin/boards

Mentre per bugs o richieste di fatures qui:

http://rails.lipsiasoft.com/projects/lipsiadmin/issues

Ventura V. wrote:

Blade M. wrote:

molto molto bello
lo sto provando

ma non mi fa entrare con l email e la pass che ho messo in
db/migrate/001_create_accounts.rb

Fai questo check:

  1. password e password_confirmation siano uguali
  2. ti deve essere arrivata una mail di conferma , se cosi non fosse
    probabilmente non sei su linux quindi devi configurare
    nell’enviroment.rb la posta
  3. Attiva il tuo account e poi puoi entrare correttamente

mea culpa
non avevo visto la mail di conferma
funzia

ora lo testo per bene :smiley:
ti farò sapere :smiley:

Ventura V. wrote:

Blade M. wrote:

mea culpa
non avevo visto la mail di conferma
funzia

ora lo testo per bene :smiley:
ti farò sapere :smiley:

Sono contentissimo

Mi raccomando ragazzi conto su di voi per migliorarlo.

Ho aperto dei forum ufficiali di supporto

http://rails.lipsiasoft.com/projects/lipsiadmin/boards

Mentre per bugs o richieste di fatures qui:

http://rails.lipsiasoft.com/projects/lipsiadmin/issues

non mancherò
una cosa, potresti inserire nella guida come risolvere il problema con
attachment_fu e rails 2.0 ( e magari postarlo anche qua) :smiley:

Blade M. wrote:

Ventura V. wrote:

Blade M. wrote:

mea culpa
non avevo visto la mail di conferma
funzia

ora lo testo per bene :smiley:
ti farò sapere :smiley:

Sono contentissimo

Mi raccomando ragazzi conto su di voi per migliorarlo.

Ho aperto dei forum ufficiali di supporto

http://rails.lipsiasoft.com/projects/lipsiadmin/boards

Mentre per bugs o richieste di fatures qui:

http://rails.lipsiasoft.com/projects/lipsiadmin/issues

non mancherò
una cosa, potresti inserire nella guida come risolvere il problema con
attachment_fu e rails 2.0 ( e magari postarlo anche qua) :smiley:

Si ho scritto all’autore se poteva fixarlo lui (questo a novembre) non
ho visto mi ha risposto va bene che quando aveva tempo lo fixava.

Volevo metterlo nei miei sorgenti corretto ora gli chiedo il permesso.

Intanto ti dico che è semplice sostituisci il file allegato.

Il problema è che attachment_fu utilizza :size come attributo della
tabella e ora questo campo è riservato a rails.

va rinominato.

Ventura V. wrote:

Blade M. wrote:

Ventura V. wrote:

Blade M. wrote:

mea culpa
non avevo visto la mail di conferma
funzia

ora lo testo per bene :smiley:
ti farò sapere :smiley:

Sono contentissimo

Mi raccomando ragazzi conto su di voi per migliorarlo.

Ho aperto dei forum ufficiali di supporto

http://rails.lipsiasoft.com/projects/lipsiadmin/boards

Mentre per bugs o richieste di fatures qui:

http://rails.lipsiasoft.com/projects/lipsiadmin/issues

http://www.ruby-forum.com/attachment/1355/attachment_fu.rb

ho messo quello corretto sostituiscilo e vedrai che tutto fila liscio

Ventura V. wrote:

Ventura V. wrote:

Blade M. wrote:

Ventura V. wrote:

Blade M. wrote:

mea culpa
non avevo visto la mail di conferma
funzia

ora lo testo per bene :smiley:
ti farò sapere :smiley:

Sono contentissimo

Mi raccomando ragazzi conto su di voi per migliorarlo.

Ho aperto dei forum ufficiali di supporto

http://rails.lipsiasoft.com/projects/lipsiadmin/boards

Mentre per bugs o richieste di fatures qui:

http://rails.lipsiasoft.com/projects/lipsiadmin/issues

http://www.ruby-forum.com/attachment/1355/attachment_fu.rb

ho messo quello corretto sostituiscilo e vedrai che tutto fila liscio

con questo file l’inserimento funziona bene ma poi da un errore nel edit
pare infatti che non vengano inseriti nel db width e height e quando fai
l’edit l’errore che mostra è

ou have a nil object when you didn’t expect it!
The error occurred while evaluating nil.width

Extracted source (around line #17):

14: →
15:


16: <% if @article && @article.image %>
17:

18:
<%= image_tag(@article.image.public_filename(:thumb))
%>

19:
<%= link_to
“Destroy”, {:action => :destroy_image, :id => @article}, {:confirm =>
“Are you sure to destroy this image?”, :method => :delete} %>

20:

Ventura V. wrote:

Blade M. wrote:

Extracted source (around line #17):

14: -->
15:


16: <% if @article && @article.image %>
17:

18:
<%= image_tag(@article.image.public_filename(:thumb))
%>

19:
<%= link_to
“Destroy”, {:action => :destroy_image, :id => @article}, {:confirm =>
“Are you sure to destroy this image?”, :method => :delete} %>

20:

Nel modello Immagine hai il metodo get_thumbnail? Non è nient’altro che
un piccolo metodo che serve per estrapolare width e height della
thumb/immagine che ti serve visualizzare.

class Image < ActiveRecord::Base
has_attachment :storage => :file_system, :path_prefix =>
‘public/uploads’,
:resize_to => “>500”,
:thumbnails => { :thumb => [100, 100] }

validates_as_attachment

has_many :articles

def get_thumbnail(thumb)
self.class.find(:first, :conditions => [“parent_id = ? AND thumbnail
= ?”, id, thumb.to_s])
end
end

questo è il mio image.rb
class Image < ActiveRecord::Base
has_attachment :storage => :file_system, :path_prefix =>
‘public/uploads’,
:resize_to => “>500”,
:thumbnails => { :thumb => [100, 100] }

validates_as_attachment

has_many :articles

def get_thumbnail(thumb)
self.class.find(:first, :conditions => [“parent_id = ? AND thumbnail
= ?”, id, thumb.to_s])
end
end

def get_thumbnail(thumb)
self.class.find(:first, :conditions => [“parent_id = ? AND thumbnail
= ?”, id, thumb.to_s])
end
end

Strano, la migration l’hai presa dal mio esempio?

Blade M. wrote:

Extracted source (around line #17):

14: -->
15:


16: <% if @article && @article.image %>
17:

18:
<%= image_tag(@article.image.public_filename(:thumb))
%>

19:
<%= link_to
“Destroy”, {:action => :destroy_image, :id => @article}, {:confirm =>
“Are you sure to destroy this image?”, :method => :delete} %>

20:

Nel modello Immagine hai il metodo get_thumbnail? Non è nient’altro che
un piccolo metodo che serve per estrapolare width e height della
thumb/immagine che ti serve visualizzare.

class Image < ActiveRecord::Base
has_attachment :storage => :file_system, :path_prefix =>
‘public/uploads’,
:resize_to => “>500”,
:thumbnails => { :thumb => [100, 100] }

validates_as_attachment

has_many :articles

def get_thumbnail(thumb)
self.class.find(:first, :conditions => [“parent_id = ? AND thumbnail
= ?”, id, thumb.to_s])
end
end

Ventura V. wrote:

def get_thumbnail(thumb)
self.class.find(:first, :conditions => [“parent_id = ? AND thumbnail
= ?”, id, thumb.to_s])
end
end

Strano, la migration l’hai presa dal mio esempio?
si

il file 005_create_images.rb

class CreateImages < ActiveRecord::Migration
def self.up
create_table :images do |t|
t.references :parent
t.string :thumbnail, :filename, :content_type
t.integer :file_size, :width, :height
t.float :aspect_ratio
t.timestamps
end
end

def self.down
drop_table :images
end
end

praticamente dopo che faccio l’inserimento di un immagine e vado a
vedere nel db noto che ha inseto i valori filename, file_size, ecc ma
width e height sono null e quando apro l’edit viene richiamata la
funziona get_thumbnail che ha bisogno di width e height

quindi mi sembra che il problema sia nella fase di caricamento del
immagine

Ventura V. wrote:

Blade M. wrote:

praticamente dopo che faccio l’inserimento di un immagine e vado a
vedere nel db noto che ha inseto i valori filename, file_size, ecc ma
width e height sono null e quando apro l’edit viene richiamata la
funziona get_thumbnail che ha bisogno di width e height

quindi mi sembra che il problema sia nella fase di caricamento del
immagine

Ti allego il plugin che utilizzo io
http://rails.lipsiasoft.com/versions/download/2?attachment_id=3

è l’attachment_fu corretto.

Non vorrei che ho modificato altri file (di cui ora non mi ricordo)

Prova così e fammi sapere

mi da ancora lo stesso errore
devo aver sbagliato qualcosa
mmmm

Blade M. wrote:

mi da ancora lo stesso errore
devo aver sbagliato qualcosa
mmmm

si… è strano forte, immagino che l’hai fatto, però la butto li … hai
riavviato webrick?

Nei log non dice nulla di interessante?

Blade M. wrote:

praticamente dopo che faccio l’inserimento di un immagine e vado a
vedere nel db noto che ha inseto i valori filename, file_size, ecc ma
width e height sono null e quando apro l’edit viene richiamata la
funziona get_thumbnail che ha bisogno di width e height

quindi mi sembra che il problema sia nella fase di caricamento del
immagine

Ti allego il plugin che utilizzo io
http://rails.lipsiasoft.com/versions/download/2?attachment_id=3

è l’attachment_fu corretto.

Non vorrei che ho modificato altri file (di cui ora non mi ricordo)

Prova così e fammi sapere

Ventura V. wrote:

Blade M. wrote:

mi da ancora lo stesso errore
devo aver sbagliato qualcosa
mmmm

si… è strano forte, immagino che l’hai fatto, però la butto li … hai
riavviato webrick?

Nei log non dice nulla di interessante?

si si avevo riavviato

nei log dice roba brutta :d

ActionView::TemplateError (You have a nil object when you didn’t expect
it!
The error occurred while evaluating nil.width) on line #17 of
backend/articles/_form.html.erb:
14: -->
15:


16: <% if @article && @article.image %>
17:

18:
<%=
image_tag(@article.image.public_filename(:thumb)) %>

19:
<%=
link_to “Destroy”, {:action => :destroy_image, :id => @article},
{:confirm => “Are you sure to destroy this image?”, :method => :delete}
%>

20:
app/views/backend/articles/_form.html.erb:17:in 

_run_erb_47app47views47backend47articles47_form46html46erb' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/base.rb:637:insend’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/base.rb:637:in
compile_and_render_template' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/base.rb:365:inrender_template’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/base.rb:316:in
render_file' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/base.rb:331:inrender’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/partials.rb:117:in
render_partial' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/benchmarking.rb:26:inbenchmark’
/usr/lib/ruby/1.8/benchmark.rb:293:in measure' /usr/lib/ruby/1.8/benchmark.rb:307:inrealtime’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/benchmarking.rb:26:in
benchmark' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/partials.rb:116:inrender_partial’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/base.rb:352:in
render' app/views/backend/articles/edit.html.erb:3:in_run_erb_47app47views47backend47articles47edit46html46erb’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/helpers/capture_helper.rb:142:in
call' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/helpers/capture_helper.rb:142:incapture_erb_with_buffer’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/helpers/capture_helper.rb:44:in
capture' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/helpers/form_tag_helper.rb:417:inform_tag_in_block’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/helpers/form_tag_helper.rb:39:in
form_tag' app/views/backend/articles/edit.html.erb:2:in_run_erb_47app47views47backend47articles47edit46html46erb’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/helpers/capture_helper.rb:142:in
call' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/helpers/capture_helper.rb:142:incapture_erb_with_buffer’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/helpers/capture_helper.rb:44:in
capture' vendor/plugins/lipsiadmin/lib/lipsiadmin_helper.rb:20:inpage’
app/views/backend/articles/edit.html.erb:1:in
_run_erb_47app47views47backend47articles47edit46html46erb' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/base.rb:637:insend’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/base.rb:637:in
compile_and_render_template' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/base.rb:365:inrender_template’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_view/base.rb:316:in
render_file' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/base.rb:1100:inrender_for_file’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/base.rb:836:in
render_with_no_layout' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/layout.rb:262:inrender_without_benchmark’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/benchmarking.rb:51:in
render' /usr/lib/ruby/1.8/benchmark.rb:293:inmeasure’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/benchmarking.rb:51:in
render' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/base.rb:1153:indefault_render’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/base.rb:1159:in
perform_action_without_filters' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/filters.rb:697:incall_filters’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/filters.rb:689:in
perform_action_without_benchmark' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/benchmarking.rb:68:inperform_action_without_rescue’
/usr/lib/ruby/1.8/benchmark.rb:293:in measure' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/benchmarking.rb:68:inperform_action_without_rescue’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/rescue.rb:199:in
perform_action_without_caching' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/caching.rb:678:inperform_action’
/usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/connection_adapters/abstract/query_cache.rb:33:in
cache' /usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/query_cache.rb:8:incache’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/caching.rb:677:in
perform_action' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/base.rb:524:insend’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/base.rb:524:in
process_without_filters' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/filters.rb:685:inprocess_without_session_management_support’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/session_management.rb:123:in
process' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/base.rb:388:inprocess’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:171:in
handle_request' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:115:indispatch’
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:126:in
dispatch_cgi' /usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:9:indispatch’
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel/rails.rb:76:in
process' /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel/rails.rb:74:insynchronize’
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel/rails.rb:74:in
process' /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel.rb:159:inprocess_client’
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel.rb:158:in
each' /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel.rb:158:inprocess_client’
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel.rb:285:in
run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel.rb:285:ininitialize’
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel.rb:285:in
new' /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel.rb:285:inrun’
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel.rb:268:in
initialize' /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel.rb:268:innew’
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel.rb:268:in
run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel/configurator.rb:282:inrun’
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel/configurator.rb:281:in
each' /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel/configurator.rb:281:inrun’
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/bin/mongrel_rails:128:in
run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/lib/mongrel/command.rb:212:inrun’
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.3/bin/mongrel_rails:281
/usr/bin/mongrel_rails:16:in `load’
/usr/bin/mongrel_rails:16

Rendering
/usr/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/templates/rescues/layout.erb
(internal_server_error)

Blade M. wrote:

nei log dice roba brutta :d

ActionView::TemplateError (You have a nil object when you didn’t expect
it!
The error occurred while evaluating nil.width) on line #17 of
backend/articles/_form.html.erb:

Copiami la parte dei log sopra questa