coordinates GET /coordinates(.:format) coordinates#index
POST /coordinates(.:format) coordinates#create
new_coordinate GET /coordinates/new(.:format) coordinates#new
edit_coordinate GET /coordinates/:id/edit(.:format) coordinates#edit
coordinate GET /coordinates/:id(.:format) coordinates#show
PUT /coordinates/:id(.:format) coordinates#update
DELETE /coordinates/:id(.:format) coordinates#destroy
tweets_search GET /tweets/search(.:format) tweets#search
tweets_index GET /tweets/index(.:format) tweets#index
class TweetsController<ApplicationController
def index
#include 'coordinates_controller.rb'
include SearchHelper
include ParamasHelper
@sql=a.search
@tweets=Tweets.paginate_by_sql(sql, :@page, :per_page => @per_page).all
end
end
В моем приложении Rails, у меня есть две таблицы с именами Coordinates
и Tweets
. У меня есть четыре действия, которые нужно выполнить.рубин на рельсах маршрутизации маршрутизации ошибок к неправильной странице
Мой routes.rb
файл
Tweetsblog2::Application.routes.draw do
resources :tweets, :coordinates
get "tweets/show"
get "tweets/index"
match "/tweets/show" => "tweets#show"
match "/tweets/index" => "tweets#index"
Всякий раз, когда я перейти к http://localhost:3000/tweets
, он показывает tweets/index
вместо tweets/show
и та же ошибка, я получаю с разными названиями.
Когда я перехожу на http://localhost:3000/tweets/show
, он дает ArgumentError in TweetsController#show
.
Когда я перейти к http://localhost:3000/tweets/index
его подачи ArgumentError in TweetsController#show
одно и то же
Мой код show.html.erb
:
<%= form_tag({controller: "tweets", action:"index" }, method: "get") do %>
<%= label_tag(:search, "search for:") %>
<%= text_field_tag(:show) %>
<%= text_field_tag(:search) %>
<%= submit_tag("get results ") %>
<% end %>
Мой код index.html.erb
:
<%= will_paginate @tweets %>
<% @tweets.each do |tweets| %>
<ul>
<li><%= tweets.id %></li>
<li><%= tweets.tweet_created_at %></li>
<li><%= tweets.tweet_id %></li>
<li><%= tweets.tweet_source %></li>
<li><%= tweets.tweet_text %></li>
<li><%= tweets.user_id %></li>
<li><%= tweets.user_name %></li>
<li><%= tweets.user_sc_name %></li>
<li><%= tweets.user_loc %></li>
<li><%= tweets.user_img %></li>
<li><%= tweets.longitude %></li>
<li><%= tweets.latitude %></li>
<li><%= tweets.place %></li>
<li><%= tweets.country %></li>
<% end %>
</ul>
Это не маршрутизации на соответствующую страницу. Пожалуйста, помогите мне, я застрял в этом.
можете ли вы опубликовать ваш 'TweetController' как вероятный капот этой ошибки может быть то, что вы не имеете этого действия установленный в вашем контроллере. – David
Sidenote - вы должны переместить свой '
', поэтому он находится снаружи '<% @ tweets.each do | tweets | %> ', как'
'is. –запустите 'rake routes', чтобы показать, как маршрутизатор видит ваш файл конфигурации. , первые «ресурсы: твиты,: координаты» - это то, почему они соответствуют/твиты для действия #index, это то, что делают ресурсы. Кроме того, ваш матч/получение являются излишними. поскольку матч принимает любой тип (post/get), а get принимает только get. – Doon