Layout in application_controller

Ho inserito nel file application_controller
layout “main”
in modo che tutti i controller avessero lo stesso layout.
In main.html.erb ho:
<%= javascript_include_tag :defaults %>.

In index.html.erb del controller X ho:

<% form_tag rusers_path, :method => :get do %>

<%= text_field_tag :search, params[:search] %> <%= image_tag("indicator.gif", :id => "spinner", :style => "display: none;") %> <#%= submit_tag "Search", :name => :nil %>

<% end %> <%= observe_field(:search, :frequency => 0.5, :update => :search_hits, :loading => "Element.show('spinner')", :complete => "Element.hide('spinner')", :url => { :action => :index }) %>

La ricerca ajax non funziona.
Se invece metto in X_controller
layout “main”

la ricerca ajax funziona.

Come mai layout “main” in application_controller non viene considerato?

2010/3/15 Mauro [email protected]:

<%= text_field_tag :search, params[:search] %>
:url => { :action => :index }) %>

La ricerca ajax non funziona.
Se invece metto in X_controller
layout “main”

la ricerca ajax funziona.

fammi capire: se non scrivi layout “main” in X_controller, la pagina è
valida (contiene, ad esempio, ) o no?

Ma se invece chiami il layout “application.html.erb” e non scrivi
niente da nessuna parte?

(Di default, il layout si chiama come il controller, a meno che non ci
sia un layout chiamato application: in quel caso viene usato per tutti
i controller).

pietro

2010/3/15 Pietro G. [email protected]:

:complete => "Element.hide('spinner')",

fammi capire: se non scrivi layout “main” in X_controller, la pagina è
valida (contiene, ad esempio, ) o no?
La pagina e’ la stessa con lo stesso codice.
La cosa cosa che differisce e’ che non viene eseguito il codice ajax,
nonostante in main.html.erb abbia
<%= javascript_include_tag :defaults %> .

(Di default, il layout si chiama come il controller, a meno che non ci
sia un layout chiamato application: in quel caso viene usato per tutti
i controller).

Si ma se mi creo un layout che chiamo “main” e
nell’application_controller metto layout “main” questo dovrebbe
diventare il layout di default per tutti i controller, o no?

Il 15 marzo 2010 12.11, Mauro [email protected] ha scritto:

fammi capire: se non scrivi layout “main” in X_controller, la pagina è
valida (contiene, ad esempio, ) o no?

La pagina e’ la stessa con lo stesso codice.
La cosa cosa che differisce e’ che non viene eseguito il codice ajax,
nonostante in main.html.erb abbia
<%= javascript_include_tag :defaults %> .

Non ho capito; righe come queste:

<script src="/javascripts/prototype.js?1265207088"

type=“text/javascript”>



compaiono oppure no?

Si ma se mi creo un layout che chiamo “main” e
nell’application_controller metto layout “main” questo dovrebbe
diventare il layout di default per tutti i controller, o no?

Sì. Ma non sono del tutto sicuro che sia questo il problema.

Inoltre, firebug che dice?

pietro

2010/3/15 Pietro G. [email protected]:

<script src="/javascripts/prototype.js?1265207088" compaiono oppure no?

No.

2010/3/15 Pietro G. [email protected]:

type=“text/javascript”>

  • c’è altro, in /views/layouts, oltre a main.html.erb?
    Ci sono i layouts dei vari controller.
  • Cosa c’è in XController oltre alla definizione dei metodi?

Assolutamente nient’altro.

Il 15 marzo 2010 16.37, Mauro [email protected] ha scritto:

Ci sono i layouts dei vari controller.

Tra cui anche X?

pietro

2010/3/15 Pietro G. [email protected]:

Il 15 marzo 2010 16.37, Mauro [email protected] ha scritto:

Ci sono i layouts dei vari controller.

Tra cui anche X?

Beh si, ho capito devo eliminarlo.

Il 15 marzo 2010 12.59, Mauro [email protected] ha scritto:

compaiono oppure no?

No.

Ok.

Per esclusione:

  • c’è altro, in /views/layouts, oltre a main.html.erb?

  • Cosa c’è in XController oltre alla definizione dei metodi?

pietro