Передача имени файла изображения при нажатии на Ruby on Rails - PullRequest
0 голосов
/ 12 октября 2011

Я пытаюсь создать страницу с Rails, где она отображает изображения, хранящиеся в папке, и при нажатии на нее отправляет имя файла изображения в связанную форму. Несмотря на то, что мне удалось отобразить изображения на веб-странице, я не могу заставить работать вообще.

Мой текущий исходный код:

<% @fileArray.each do |x| %>
    <%= image_submit_tag(x, {:id => x, :action => "submitimage"}) %>
<% end %>

Где fileArray - это список всех файлов изображений в каталоге, и мое действие submitimage в настоящее время определено как:

def submitimage
  redirect_to :controller => 'home', :action => "index"
end

В настоящее время кажется, что она не вызывает функцию перенаправления (которую я заменю кодом, чтобы, надеюсь, передать переменную в форму).

Я довольно новичок в рельсах, поэтому я ожидаю, что мне здесь не хватает хитрости, но кто-нибудь знает способ отправки действий при нажатии на изображение?

1 Ответ

0 голосов
/ 12 октября 2011

image_submit_tag бесполезен без формы.Как у вас есть, это просто кнопка.Вам лучше сделать ссылку:

<%= link_to image_tag(x), submit_image_path(:filename => x) %>

И в ваших маршрутах:

 match 'images/:filename/submit' => 'images#submit', :as => :submit_image

И в вашем контроллере:

def submit
  @image = Image.create(:filename => params[:filename]) # or whatever
end

edit Я должен отметить, что это было бы лучше построить с использованием изобретательных маршрутов, но я оставлю это на ваше усмотрение.Вы можете прочитать все об этом здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...