"Catégories" ,: URL => ""}, touches requises manquantes: [: URL] - Retrouvez les réponses et les commentaires concernant cette question" />
Je suis un peu nouveau dans les rails. Donc, je suis tryna fait un clone craigslist. Jusqu'à présent, j'ai mis en place toutes les catégories et les sous-catégories. Je suis venu sur cette erreur lorsque j'ai essayé de référencer mes liens d'URL afin que cela puisse être comme cette Craigslist-clone / C / Communauté / Activités / 3 Où "communauté" est la catégorie mère et "activités" étant la sous-catégorie et donc "3 «Être le post à laquelle.
Maintenant, je peux cliquer sur chaque catégorie mère d'erreur moins. La seule fois où je reçois une erreur est lorsque je clique sur une sous-catégorie et que l'erreur est la suivante: p> Mes catégories_Controller: p> create_table "categories", force: :cascade do |t|
t.string "name"
t.string "url"
t.datetime "created_at", precision: 6, null: false
t.datetime "updated_at", precision: 6, null: false
t.integer "parent_id"
end
3 Réponses :
Un de vous Sous-catégorie code> semble avoir une URL vierge. <% category.subcategories.limit(10).each do |subcategory| %>
<% next if subcategory.url.blank? %>
<div class= "subcat"><%= link_to subcategory.name, show_category_path(subcategory.url) %></div>
<% end %>
Maintenant, après avoir collé ce bloc de code, je ne peux sembler voir des sous-catégories dans ma page d'accueil. Je ne vois que les catégories des parents @valles
J'ai attaché la catégorieModel et la table de catégories dans ma question
Vous avez défini un itinéraire personnalisé comme celui-ci: Par conséquent, vous devez transmettre explicitement une touche code> URL code> de la méthode de route, comme ceci: P > category GET /c/:url(.:format) categories#show
J'ai donc explicitement passé la clé URL à la méthode de la route, mais je ne peux toujours pas sembler cliquer sur l'erreur sur l'une des sous-catégories. Je suis frappé par une erreur disant aucun match d'itinéraire [get] "/ c" code> Je veux que mon URL soit comme ça lorsque je clique sur une sous-catégorie: "/ Communauté / Activités / 3 'Ai-je besoin Pour générer un nouvel itinéraire?
@Hathammaryanez-vous l'erreur car votre sous-catégorie.url == nil code>? Vous n'avez partagé ni votre code ni vos données, alors je devine vraiment que ce qui pourrait être l'erreur.
Si vous voulez un itinéraire différent (potentiellement avec un comportement différent?) Pour les URL de sous-catégorie, vous devez définir cela comme un itinéraire distinct dans config / routes.rb code>.
Ainsi, j'ai également rencontré ce type de problème avant et que vous souhaiterez peut-être modifier votre itinéraire code> de ressource code> avec une option code>: chemin code> et cela pourrait aider.
devise_for :accounts
resources :posts
resources :categories, path: "c", except:[:show] do
get "/:url" => "categories#show", as: :show_category
end
post "message/send" => "public#send_enquiry_to_user", as: :send_enquiry
get "/scams" => "public#scams", as: :scams
get "/terms" => "public#terms", as: :terms
get "/safety" => "public#safety", as: :safety
get "/faqs" => "public#faqs", as: :faqs
devise_scope :account do
get "/accounts/sign_out" => "devise/sessions#destroy"
end
root to: "public#home"
end