rubyforen.de
http://forum.ruby-portal.de/

link im yield anzeigen
http://forum.ruby-portal.de/viewtopic.php?f=20&t=26932
Seite 1 von 1

Autor:  kaib [ 06 Feb 2017, 16:50 ]
Betreff des Beitrags:  link im yield anzeigen

Hallo,

ich habe ein Problem mit link_to und yield. Bei der Startseite meiner Rails app klappt es, dass ich den Inhalt im yield der application.erb.html laden lasse. Nicht jedoch bei links in der Navigation.

Meine application.erb.html schaut (gekürzt) so aus:



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<%= render 'layouts/navbar' %>

<div class="main">
<div class="main-inner">


<div id="content">
<%= yield %>
</div>

</div>
</div>

<%= render 'layouts/footer' %>
</body>
</html>


In navbar.html.erb habe ich nun u.a. zwei Link wie folgt:

<%= link_to "Start", root_path %>

dieser wird richtig im yield Bereich geladen. Der zweite




<%= link_to t("help"), help_path %>


wird auch geladen jedoch nicht im yield.

die routes.rb schaut so aus:



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Rails.application.routes.draw do

get 'set_language/english'
get 'set_language/german'

#scope "(:locale)", :locale => /en|de/ do
# root :to => 'pages#home'
# get "pages/home"
#end

get 'pages/home'
get 'pages/help'
get 'sessions/new'
get 'users/new'

resources :sessions, :only => [:new, :create, :destroy]

root :to => "pages#home"

#root 'pages#home'
get 'help' => 'pages#help'
get 'about' => 'pages#about'
get 'contact' => 'pages#contact'
get 'signup' => 'users#new'
post 'signup' => 'users#create'
get 'login' => 'sessions#new'
post 'login' => 'sessions#create'
#delete 'logout' => 'sessions#destroy'
get 'logout' => 'sessions#destroy'


Ich habe es schon mit content_for und remote und dergleichen versucht, jedoch ohne Erfolg.
Was mache ich falsch?

Autor:  NobbZ [ 18 Feb 2017, 20:07 ]
Betreff des Beitrags:  Re: link im yield anzeigen

Einer der Fehler ist dass du uns nicht sagst wie die genaue Fehlermeldung lautet.

Meine Vermutung ist aber dass der Link to gar nicht dein Problem ist, sondern der T helper, welchen du im scope verschiebst wenn du ihn in einem anderen template nutzt.

Autor:  kaib [ 18 Feb 2017, 20:25 ]
Betreff des Beitrags:  Re: link im yield anzeigen

es gibt keine Fehlermeldung in diesem Sinne. Die seite/der view wird einfach in einem neuen context aufgemacht und nicht in meinem haupttemplate in dem sich das yield attribut befindet. das t(...) ist nur zur lokalisierung mit I18n und hat keine Relevanz bzw. es verändert sich nichts wenn ich rausnehme.

Autor:  NobbZ [ 18 Feb 2017, 20:41 ]
Betreff des Beitrags:  Re: link im yield anzeigen

Diese Beschreibung des Problems verstehe ich noch weniger als die erste. Kannst du ein minimal Projekt auf github erstellen das das Problem zeigt oder zumindest ein paar Screenshots erstellen?

Seite 1 von 1 Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/