Проблема при сохранении вложенной формы в Rails - PullRequest
0 голосов
/ 06 сентября 2018

В моем приложении у меня есть вид, называемый профилями. На этом экране пользователь может обновить ваши альбомы и фотографии этих альбомов.

У пользователя много альбомов. И альбом имеет много фотографий.

Я создаю форму в своем профиле, чтобы сохранить альбом. Как это:

#routes.rb
  get '/profile/edit/profile_albums', to: 'profiles#edit_profile_albums'


#/view/profile/edit/profile_albums.html.erb


<%= form_for album do |f| %>
    <div class="dialog dialog-centered" id=<%= album.id %> style="display: block;">
      <div class="dialog-container dialog-wide">
        <div class="dialog-content panel">
          <div class="form-group bottom-7">
            <label for="">Album Name</label>
            <input type="text" id="" value=<%= album.name %> placeholder="Add Album Name">
          </div>
          <div class="edit-photo-album bottom-5">
          <% album.photos.each do |photo| %>
           <span class="edit-photo">
              <img src="<%= asset_path ix_refile_image_url(photo, :media, fit: 'fill', bg: '0fff') %>" class="photo-preview">
                <a href="" title="Remove" class="remove-item">Remove</a>
           </span>
          <% end %>
                <span class="btn btn-default btn-file">
                        <i ></i> Upload Photos 
                        <%= f.attachment_field :photos_media, multiple: true, direct: true, presigned: true %>
                    </span>

          </div><!-- end photo album -->
          <p>
          <div class="actions">
            <%= f.submit 'Save Album', class: 'btn btn-lg btn-solid-red btn-margin-right' %>
          </div>
          <button type="button" class="btn btn-lg btn-outline-green dialog-close">Cancel</button>
          </p>
        </div><!-- end dialog content -->
      </div><!-- end dialog container -->
    </div>
<% end %>

При нажатии на кнопку сохранить:

 <%= f.submit 'Save Album', class: 'btn btn-lg btn-solid-red btn-margin-right' %>

Я получаю это сообщение:

Routing Error
No route matches [PATCH] "/profile/edit/albums"

Кто-то может мне помочь?

Спасибо

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Я думаю, вам нужно указать url в form_for.

Сначала используйте rake routes, проверьте маршрут, по которому следует отправить эту форму, а затем измените свой form forчто-то вроде:

<%= form_for album, url: edit_profile_albums_path do |f| %>

Просто замените edit_profile_albums на путь, который вы получите при запуске rake routes

0 голосов
/ 07 сентября 2018

Как показывает ошибка, вам нужно добавить правильный маршрут для работы формы. В этом случае это, вероятно, resources :albums в routes.rb. Я рекомендую просмотреть это руководство (легко читаемое): https://guides.rubyonrails.org/routing.html

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