Forum: Italian Ruby user group Ogni pagina richiesta carica sempre anche l'index

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
598fadf49a8e63645edfb36cba7dc1c9?d=identicon&s=25 Luigi Maresca (luigi-s-w-net)
on 2009-04-28 13:23
Salve ragazzi,
cia Andrea Cuius, come giustamente mi facesti notare tu in un post
precedente (http://www.ruby-forum.com/topic/183003#new), ho cominciato
ad utilizzare il development.log.
Non l'avessi mai fatto (scherzo),
ho notato che la mia applicazione per ogni richiesta diversa da quella
di default della index, chiede sempre,in coda, la index.

Mi spiego meglio e vi riporto il log:
-----------
Processing ViewController#screenshot (for 127.0.0.1 at 2009-04-28
13:09:12) [GET]
  Session ID: feeeabb31b51e76389aa131d7b15da70
  Parameters: {"title"=>"wink", "action"=>"screenshot", "id"=>"647",
"pagina"=>"registrazione-video-tutorial", "controller"=>"view",
"keyword"=>"screen-capture"}
.....
Rendering view/screenshot
........
Rendered view/_copyright (0.00000)
......
Rendered view/_analytics (0.00000)
Completed in 0.20300 (4 reqs/sec) | Rendering: 0.01600 (7%) | DB:
0.10800 (53%) | 200 OK
[http://127.0.0.1/647/software/screen-capture/wink/...]


Processing ViewController#index (for 127.0.0.1 at 2009-04-28 13:09:12)
[GET]
  Session ID: feeeabb31b51e76389aa131d7b15da70
  Parameters: {"action"=>"index", "controller"=>"view"}
  .......
Rendering template within layouts/view
Rendering view/index
 .......
Rendered view/_google (0.00000)
  .......
Rendered view/_copyright (0.00000)
Rendered view/_analytics (0.00000)
Completed in 0.45300 (2 reqs/sec) | Rendering: 0.07900 (17%) | DB:
0.31200 (68%) | 200 OK [http://127.0.0.1/]
----------------

come potete notare, dopo aver renderizzato "screenshot" mi processa
anche "index" interrogando nuovamente il db etc.

Non penso sia normale perché ho fatto il confronto con un altra mia
applicazione e questo non succede assolutamente.

Mi sapete dire dove devo andare a guardare?

Grazie mille del tempo dedicatomi

Luigi
7de465f222e6a9c7fe658e370d0bfe05?d=identicon&s=25 Paolo Montrasio (pmontrasio)
on 2009-04-28 14:26
Per qualche ragione il tuo browser fa due richieste al server. Lo si
vede dal fatto che la sessione è sempre la stessa.

Potrebbe esserci qualche onload javascript che fa una chiamata ajax,
oppure una frame che si ricarica o anche qualcosa nell'eventuale proxy
che usi davanti a rails, mentre non credo che ci sia un doppio render
perché a parte darti errore, non ci sarebbe traccia di una richiesta nel
log.

E' però un po' difficile fare una diagnosi da remoto di un problema così
particolare.

Paolo

> Processing ViewController#screenshot (for 127.0.0.1 at 2009-04-28
> 13:09:12) [GET]
>   Session ID: feeeabb31b51e76389aa131d7b15da70
>   Parameters: {"title"=>"wink", "action"=>"screenshot", "id"=>"647",
> "pagina"=>"registrazione-video-tutorial", "controller"=>"view",
> "keyword"=>"screen-capture"}
> [...]
> 
[http://127.0.0.1/647/software/screen-capture/wink/...]

> Processing ViewController#index (for 127.0.0.1 at 2009-04-28 13:09:12)
> [GET]
>   Session ID: feeeabb31b51e76389aa131d7b15da70
>   Parameters: {"action"=>"index", "controller"=>"view"}
> [...]
> Completed in 0.45300 (2 reqs/sec) | Rendering: 0.07900 (17%) | DB:
> 0.31200 (68%) | 200 OK [http://127.0.0.1/]
598fadf49a8e63645edfb36cba7dc1c9?d=identicon&s=25 Luigi Maresca (luigi-s-w-net)
on 2009-04-28 14:52
Grazie mille,
era il codice java del google analytics che avevo modificato in locale
per velocizzare le prove togliendo l'url:
src="http://www.google-analytics.com/urchin.js"

e lasciando solo src=""

Grazie ancora.

Luigi
7de465f222e6a9c7fe658e370d0bfe05?d=identicon&s=25 Paolo Montrasio (pmontrasio)
on 2009-04-29 10:35
Luigi Maresca wrote:
> Grazie mille,
> era il codice java del google analytics che avevo modificato in locale
> per velocizzare le prove togliendo l'url:
> src="http://www.google-analytics.com/urchin.js"
>
> e lasciando solo src=""
>
> Grazie ancora.
>
> Luigi

Ah, è quello l'effetto che fa un src vuoto? Chissà se il comportamento è
standard cross-browser...

Io normalmente metto il codice di analitics in un layout, incapsulandolo
dentro a un

<% if RAILS_ENV == "production" %>
google code
<% end %>

così non mi dà proprio nessun problema né in development né in test.

Altra cosa che faccio regolarmente: da javascript testo che le funzioni
di google analytics esistano prima di chiamarle, così chi ha attivo un
adblocker (io per esempio) non ha noiosi errori di javascript quando il
codice della pagina va a chiamare una funzione di uno script che non è
stato caricato.

Paolo
598fadf49a8e63645edfb36cba7dc1c9?d=identicon&s=25 Luigi Maresca (luigi-s-w-net)
on 2009-05-04 12:05
> Ah, è quello l'effetto che fa un src vuoto?

si perché sostanzialmente carica la home e quindi la index predefinita.


> Io normalmente metto il codice di analitics in un layout, incapsulandolo
> dentro a un
>
> <% if RAILS_ENV == "production" %>
> google code
> <% end %>

bella questa può essere utile

> così non mi dà proprio nessun problema né in development né in test.
>
> Altra cosa che faccio regolarmente: da javascript testo che le funzioni
> di google analytics esistano prima di chiamarle, così chi ha attivo un
> adblocker (io per esempio) non ha noiosi errori di javascript quando il
> codice della pagina va a chiamare una funzione di uno script che non è
> stato caricato.

qui comincio ad avere qualche difficoltà di comprensione...


Grazie mille del tempo dedicatomi

Luigi
7de465f222e6a9c7fe658e370d0bfe05?d=identicon&s=25 Paolo Montrasio (pmontrasio)
on 2009-05-04 13:32
Te lo spiego con un esempio

<script src="http://www.google-analytics.com/urchin.js"
type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-codice";
if (self.urchinTracker) {
  urchinTracker();
}
</script>

Se con AdBlock o NoScript o plugin equivalenti blocchi
http://www.google-analytics.com/urchin.js la chiamata a urchinTracker
genererà un errore di JavaScript. E' vero che chi usa quei plugin a
queste cose è abituato, ma testando prima l'esistenza della function
urchinTracker si evita di mettergli un errore inutile nel log del
browser e poiché chi usa quei plugin è mediamente più smaliziato,
apprezzerà di più la gentilezza. Io di sicuro mi ero stufato di vedere
degli errori (che non erano errori) nelle applicazioni web che programmo
:-)

Paolo


Luigi Maresca wrote:
>> Ah, è quello l'effetto che fa un src vuoto?
>
> si perché sostanzialmente carica la home e quindi la index predefinita.
>
>
>> Io normalmente metto il codice di analitics in un layout, incapsulandolo
>> dentro a un
>>
>> <% if RAILS_ENV == "production" %>
>> google code
>> <% end %>
>
> bella questa può essere utile
>
>> così non mi dà proprio nessun problema né in development né in test.
>>
>> Altra cosa che faccio regolarmente: da javascript testo che le funzioni
>> di google analytics esistano prima di chiamarle, così chi ha attivo un
>> adblocker (io per esempio) non ha noiosi errori di javascript quando il
>> codice della pagina va a chiamare una funzione di uno script che non è
>> stato caricato.
>
> qui comincio ad avere qualche difficoltà di comprensione...
>
>
> Grazie mille del tempo dedicatomi
>
> Luigi
This topic is locked and can not be replied to.