Tworzę nowy widżet, a jednym z parametrów jest selektor obrazu, po prostu używam tego kodu. Wszystko wygląda dobrze. Mogę otworzyć folder multimediów i wybrać zdjęcie, którego chcę użyć. Kiedy wybieram zdjęcie, pole obrazu w formularzu jest wypełniane następującą wartością:
Ale kiedy zapisuję dane widgetu formularza, pole obrazu ma następującą wartość:
{{media url=
nic więcej. Jak mogę to rozwiązać?
magento2
image-upload
widget
mvistas
źródło
źródło
Odpowiedzi:
Jeśli chcesz załadować obraz, dlaczego nie użyć przycisku wyboru obrazu.?
Jeśli podoba Ci się edytor, użyj go, ale nie jest to właściwy sposób na przesłanie obrazu za pomocą edytora. Zamiast tego możesz użyć przycisku. Jeśli nie wiesz jak to zrobić. Pozwól mi wyjaśnić.
Oto mój kod. Poniższy kod jest zapisany w pliku bloku, który tworzy przycisk.
Obraz to nazwa pola bazy danych. W twoim przypadku jest to edytor wysiwyg. Nie znam dokładnego, ale po sprawdzeniu bazy danych.
Poniższy kod służy do zapisania obrazu w tabeli. Teraz umieść ten kod w swoim kontrolerze.
}
Następnie chcesz wywołać go w phtml dla wyniku .. więc poniżej wpisz kod w pliku phtml.
Oto kod.
getCollectionFor () zapisuje w moim bloku. więc zgodnie z tym powinieneś zastosować jako plik bloku.
Mam nadzieję, że ci to pomoże. Jeśli masz jakieś zapytanie, daj mi znać.
źródło
Sprawdziłem kod i stwierdziłem, że kod do pobrania adresu URL obrazu z katalogu nie jest uwzględniony. Musisz nad tym popracować, aby rozwiązać ten problem. Brakuje kodu do dołączenia adresu URL obrazu.
źródło
Wygląda na to, że jest to znany problem w Magento 2.1. Oto link do ich github, aby uzyskać więcej informacji na ten temat. https://github.com/magento/magento2/issues/6138 Wygląda na to, że może być kilka różnych poprawek do wypróbowania.
źródło
Możesz przejrzeć ostatnie zatwierdzenie i utworzyć dla niego ścieżkę na github i spróbować go zastosować https://github.com/magento/magento2/commit/ba6612462c260da7cc534b6365623993a6fe4311
źródło
Za pomocą jquery możemy zapisać obraz w folderze.
W skrypcie napisz ten kod
Następnie w niestandardowym kontrolerze:
Przesyłanie klas rozszerza \ Magento \ Framework \ App \ Action \ Action {
}
zapoznaj się Jak zapisać przesyłany obraz do folderu w magento2?
Za pomocą obserwatora możesz uzyskać wartość obrazu w poście .. W polu wejściowym znacznik użyj data-form-part = "product_form".
źródło