Я новичок в RoR, и я пытаюсь создать классическое веб-приложение с сообщением &. Существует модель & контроллер (Onlines), которая позволяет пользователю размещать свои сообщения на общей стене с новой информацией, имеющей отношение к этому действию. В настоящее время я пытаюсь изменить вложенную форму, связанную с этим действием (Onlines), изменив модель Onlines. Но я не могу получить доступ к этому действию моего контроллера, и я не понимаю, почему?Доступ к моему действию редактируется с другого контроллера
Мой код ::
Onlines контроллер:
class OnlinesController < ApplicationController
before_action :set_online
def edit
end
private
def set_online
@post = Post.find(params[:post_id])
@online = Online.find_by(params[:id])
end
end
Сообщение Контроллер:
class PostsController < ApplicationController
before_action :set_online
def show
@online.post_id = @post.id
end
private
def set_online
@onlines = Online.find_by(id: params[:id])
end
end
просмотров/сообщений/показать: `
<div class="btn-group" role="group" aria-label="...">
<%= link_to '- taked - ', edit_online_path(@online), data: { confirm: 'Confirmer la mise en ligne de #{@title}?' }, class: "btn btn-primary " %>
</div>
Просмотров/onlines/редактирование:
<%= simple_form_for([@post, @onlines]) do |f| %>
<div class="row">
<div class="col-md-12">
<div id="Order">
<%= f.simple_fields_for :orders do |order| %>
<%= render 'orders_fields', f: order %>
<%end%>
<div class="Order_links">
<%= link_to_add_association 'Ajouter une part', f, :orders, class: "btn btn-default" %>
</div>
</div>
</div>
</div>
<div class="form-group text-center">
<%= f.submit "Pusher", class: 'btn btn-success' %>
</div>
<% end %>
Маршруты:
Rails.application.routes.draw do
get 'profiles/show'
mount RailsAdmin::Engine => '/admin', as: 'rails_admin'
devise_for :users, :controllers => { registrations: 'registrations' }
resources :posts do
resources :comments
resources :onlines
end
get ':pseudo', to: 'profiles#show', as: :profile
get ':pseudo/edit', to: 'profiles#edit', as: :edit_profile
patch ':pseudo/edit', to: 'profiles#update', as: :update_profile
get ':post_id/online/new', to: 'online#new', as: :new_online
post ':post_id/online/:id/edit', to: 'onlines#edit', as: :edit_online
root 'posts#index'
Так что, если вы можете направлять меня, чтобы добиться успеха этого действия было бы замечательно, спасибо!
Спасибо за ваш оперативный ответ Я редактирую свой вопрос, чтобы показать вам все мои маршруты Я не понимаю, что вы сказали мне о set_online, нужно ли мне ограничивать действие только? –