Jak mogę pobrać plik z adresu URL i zapisać go w Railsach?
197
Mam adres URL obrazu, który chcę zapisać lokalnie, dzięki czemu mogę użyć Paperclip do utworzenia miniatury dla mojej aplikacji. Jaki jest najlepszy sposób na pobranie i zapisanie obrazu? (Zajrzałem do obsługi plików ruby, ale niczego nie spotkałem.)
To działa. Dzięki. Próbowałem tego na zdjęciu. Obraz nie został poprawnie zapisany w pliku. Jakby został uszkodzony lub coś takiego. Czy mógłbyś też poprowadzić mnie do zrobienia tego samego w aplikacji Rails. Czy mogę tego użyć w aplikacji Rails?
Tak, możesz go użyć w aplikacji szynowej. Plik nie został poprawnie zapisany, prawdopodobnie dlatego, że zapomniałem otworzyć miejsce docelowe w trybie binarnym zapisu. Będę to teraz edytować.
Mimo że przydaje się wyświetlanie obu odpowiedzi, aby ludzie tacy jak ja mogli zobaczyć obie, pomyśl o różnicach, a następnie świadomie wybierz tę odpowiedź z właściwych powodów :)
To zależy, ale zazwyczaj robisz coś takiego w metodzie modelu lub kontrolera. W kontekście Railsów lepiej jest używać narzędzi frameworka, takich jak ActiveStorage, zamiast pisać bezpośrednio na dysku.
Ta odpowiedź wymaga większej widoczności, ponieważ Kernel#openumożliwia nie tylko dostęp do pliku, ale także proces wywoływania przez prefiks symbolu potoku (np open("| ls").). Może więc prowadzić do poważnego zagrożenia bezpieczeństwa, stosując zmienne dane wejściowe do argumentu Kernel#open.
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.