У вас нет git
в вашем последнем (третьем) изображении, потому что у вас есть только git
в dependencies
, а последнее происходит от base
, который является чистым альпийским питоном.
Поэтому, когда вы пытаетесь RUN pip install -r requirements.txt && rm -rf /root/.cache
, вы не выполняете требования по протоколу git
.
Если вам нужно, чтобы ваше окончательное изображение было тонким, есть несколько вариантов, как его исправить:
use venv
(виртуальная среда Python); создайте его на 2-м шаге и COPY
до последнего. Тогда нет необходимости устанавливать требования.
загрузить запросы из репозитория на локальный диск на 2-м шаге, затем COPY
их на 3-й шаг и установить (может потребоваться gcc
на 3-м шаге, но не git
)
Это должно сделать это:
<%= f.select :project_id, @project_select, :selected => params[:pid] %>
если параметрические усилители [: pid] является строкой, которую, если он прибыл из формы, это, необходимо будет, вероятно, использовать
params[:pid].to_i
для корректного объекта, который будет выбран в списке выборки
Я нашел решение, и я нашел, что являюсь довольно неопытным в RoR.
Внутренняя часть контроллер, который справляется с представлением, описанным выше, добавляет это:
@work.project_id = params[:pid] unless params[:pid].nil?
Это должно работать на Вас. Это просто передает {:value => params[:pid] }
html_options переменной.
<%= f.select :project_id, @project_select, {}, {:value => params[:pid] } %>
Используйте правильный атрибут текущего экземпляра (например, @work.project_id
):
<%= f.select :project_id, options_for_select(..., @work.project_id) %>