Problem z Uploadem

Trochę mi się kaszani aplikacja, chciałem ją uruchomić na docelowym serwerze ale wywala się wgrywanie obrazków.
Lokalnie wszystko działa normalnie, trochę się wstrzyma na chwilkę po submicie, ale idzie dalej, na produkcji wywala mi błąd “We’re sorry, but something went wrong.”
lokalnie uruchamiam na standardowym “rails server”.

Zdalnie uruchamiam na Nginx + Unicorn, do obrazków używam carrierwave. W logach wywala mi, że Nil nie ma jakiejś metody, chociaż w rails console dowodzi że ma.
Nie mam pojęcia gdzie szukać problemu.

Może to być jakis timing?
zbyt długo trwająca operacja? Troche dziwne bo całość trwa może 2-3sekundy

Sprawdzając w systemie plików obrazek ląduje poprawnie na serwerze i poprawnie zostaje zmniejszony zgodnie z konfiguracją.

Zastanawiam się czy nie użyć dragonfly zamiast carrierwave

Ma ktoś jeszcze jakieś pomysły gdzie szukać problemu?

pozdrawiam.

:wink:

Jak sobie życzysz jednak wspomniałem, że logi niewiele mówią :confused:

[code]Started POST “/items” for 83.(snip) at 2011-04-07 06:11:27 +0000
Processing by ItemsController#create as HTML
Parameters: {“utf8”=>"?", “authenticity_token”=>“9b2rDYUegmZcFi8Kz3s3VOWKxhihKdWBc2JzmY=”, “item”=>{“terms”=>“1”, “item_logo”=>#<ActionDispatch::Http::UploadedFile:0xa5d7ca8 @original_filename=“IMG_4954.JPG”, @content_type=“image/jpeg”, @headers=“Content-Disposition: form-data; name=“item[item_logo]”; filename=“IMG_4954.JPG”\r\nContent-Type: image/jpeg\r\n”, @tempfile=#<File:/tmp/RackMultipart20110407-32428-1qhen0>>, “item_logo_cache”=>""}, “commit”=>“Zapisz”}
Completed in 6690ms

NoMethodError (undefined method name' for nil:NilClass): app/controllers/items_controller.rb:50:increate’[/code]
w 50 linijce items_controller jest @item.save

Logi nginx i unicorn milczą na ten temat :confused:

To nie brzmi zbyt optymistycznie :-). Żeby ktoś Ci mógł pomóc, musiałbyś się jeszcze podzielić kodem tego modelu i kontrolera.

Tak na ślepo (pokaż kod, serio, nie ukradniemy) to ten fragment wydaje mi się niepokojący w logu:

name=\"item[item_logo]\"

Akcja w kontrolerze to niezłe spagetti, model jest zapisywany przez kilkustepowy formularz. Tak czy siak wymieniłem carrierwave na paperclip i wszystko poszło.
Dobrym rozwiązaniem byłboy tylko oddelegowanie tworzenia miniaturek do delayed_job

Myślałem o dragonfly ale on generuje obrazki na bieżąco po wywołaniu w widoku a to mnie nie interesuje, bo potrzebuję dostęp do obrazków jeszcze inną drogą więc wróciłem do starego dobrego paperclip.

To jest moja pierwsza aplikacja, którą chcę puścić produkcyjnie i widzę, że ten błąd to pewnie początek lawiny. Muszę jakoś ogarnąć ten produkcyjny zamęt :slight_smile:

Mam nadzieję że kodu z sygnaturki nie masz w aplikacji :slight_smile:

[quote=marioosh]class Marioosh < Human
include “think”
end[/quote]

TypeError: wrong argument type String (expected Module)

:slight_smile: