Domanda

Sto cercando di scrivere un'applicazione ferroviaria in cui gli utenti possano caricare immagini, ma Paperclip non sembra funzionare per me.

Ho seguito tutti i passaggi di base (aggiunto has_attached_file, migrazione, creazione del modulo in più parti) ma continuo a ricevere lo stesso errore ogni volta che provo a caricare un'immagine:

non è possibile convertire nil in Integer

Guardando la cima della pila

...rails3/lib/paperclip/processor.rb:46:in `sprintf'

...rails3/lib/paperclip/processor.rb:46:in `make_tmpname'

.../ruby-1.9.2-head/lib/ruby/1.9.1/tmpdir.rb:154:in `create'

.../ruby-1.9.2-head/lib/ruby/1.9.1/tempfile.rb:134:in `initialize'

Sembra che il problema sia nel file temporaneo.

Il mio codice:

_form.rb

<%= form_for @high_school, :html => {:multipart => true} do |f| %>
  <%= f.error_messages %>
  ...
  <div class="field">
    <%= f.file_field :photo %>
  </div>
  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

modello/high_school.rb

...
validates_length_of :password, :minimum => 4, :allow_blank => true
has_attached_file :photo
has_many :students
...

È un problema noto?Fondamentalmente ho seguito le istruzioni da github alla lettera.

Il mio ambiente:Rails3 e Ruby 1.9.2dev

Grazie!

È stato utile?

Soluzione

Non credo che paperclip supporti ancora Ruby 1.9.

Prova a passare a Ruby 1.8.7 e vedi se il problema persiste.

Altri suggerimenti

devi applicare questa patch http://github.com/dwalters/paperclip/commit/2a85add5f102db8773518f8ac30f7e2337bf7d13 per far funzionare la graffetta sulla versione 1.9.2, verificare l'errore impossibile convertire nil in numero intero

Questo problema è stato ora risolto nella versione 2.3.3 di paperclip.Vedi questo impegno:https://github.com/thinkbot/paperclip/commit/1bcfc14388d0651c5fc70ab9ca3511144c698903

Qui qualcuno ha un problema simile al tuo con Paperclip su Ruby 1.9 (ma non esiste una soluzione).Quindi probabilmente è un problema con la versione Ruby.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top