Скрепка и временный файл с Rails - PullRequest
2 голосов
/ 20 марта 2010

Я пытаюсь написать приложение для рельсов, где пользователи могут загружать изображения, но Paperclip, похоже, не работает для меня.

Я прошел все основные шаги (добавил has_attached_file, миграция, создание формы, состоящей из нескольких частей), но я продолжаю получать ту же ошибку, когда пытаюсь загрузить изображение:

не может конвертировать ноль в целое число

Глядя на вершину стека

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

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

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

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

Кажется, проблема в временном файле.

Мой код:

_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 %>

модель / high_school.rb

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

Это известная проблема? Я в основном следовал инструкциям от github к письму.

Моя среда: Rails3 и Ruby 1.9.2dev

Спасибо!

Ответы [ 4 ]

2 голосов
/ 06 января 2011

Это было исправлено в версии 2.3.3 скрепки. Смотрите этот коммит: https://github.com/thoughtbot/paperclip/commit/1bcfc14388d0651c5fc70ab9ca3511144c698903

2 голосов
/ 22 апреля 2010

Вы должны применить этот патч http://github.com/dwalters/paperclip/commit/2a85add5f102db8773518f8ac30f7e2337bf7d13, чтобы скрепка работала на головке 1.9.2, поскольку невозможно преобразовать ноль в целочисленную ошибку

2 голосов
/ 20 марта 2010

Я не верю, что скрепка поддерживает ruby ​​1.9.

Попробуйте перейти на ruby ​​1.8.7 и посмотреть, существует ли проблема.

0 голосов
/ 21 марта 2010

Здесь у кого-то есть проблема, похожая на вашу с Paperclip на ruby ​​1.9 (но нет решения). Так что, вероятно, это проблема с ruby-версией.

...