# Domanda sulla validazione

**URL:** <https://www.ruby-forum.com/t/domanda-sulla-validazione/92669>\
**Category:** IT\
**Created:** [April 22, 2007, 9:57pm UTC](https://www.ruby-forum.com/t/domanda-sulla-validazione/92669 "2007-04-22T21:57:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![tarini](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/5f8ce5/32.png) [@tarini](https://www.ruby-forum.com/u/tarini)\
**Post date:** [April 22, 2007, 9:57pm UTC](https://www.ruby-forum.com/t/domanda-sulla-validazione/92669/1 "2007-04-22T21:57:40Z")

</div>

buona sera a tutti,  
mi è sorto un dubbio sul meccanismo di validazione di rails.

Parto sempre da un problema relativo al mio forum-demo.

Nel momento in cui creo un topic eseguo questo codice:  
@topic = Topic.new params[:topic]  
@topic.user = session[:user]  
@topic.forum = @forum  
@post = Post.new params[:post]  
@post.user = session[:user]  
@topic.posts \<\< @post

Tramite le dichiarazioni validates\_\* controllo che il title del topic e  
il  
content del post siano valorizzati.  
Nel momento in cui chiamo @topic.save lo script salva su db non solo il  
topic ma anche il post.

Ma la validazione viene effettuata sia sul “padre” che sul “figlio” ??  
In  
caso positivo gli errori dove vengono salvati (entrambi in  
@topic.errorsoppure uno in @  
topic.errors e uno in @post.errors)??

thanks

–  
everything has got to end sometime we were satellites drifting off into  
space  
vega 4 - burn and fade away

---

<div class="post-metadata">

**Author:** ![tarini](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/5f8ce5/32.png) [@tarini](https://www.ruby-forum.com/u/tarini)\
**Post date:** [April 23, 2007, 3:30pm UTC](https://www.ruby-forum.com/t/domanda-sulla-validazione/92669/2 "2007-04-23T15:30:00Z")

</div>

Per validare il figlio puoi usare il metodo  
ActiveRecord::Validations::ClassMethods#validates\_associated(\*attr\_names)

per vedere dove vengono salvati gli errori basta fare un test

tarini wrote:

> Tramite le dichiarazioni validates\_\* controllo che il title del topic e  
> il  
> content del post siano valorizzati.  
> Nel momento in cui chiamo @topic.save lo script salva su db non solo il  
> topic ma anche il post.
> 
> Ma la validazione viene effettuata sia sul “padre” che sul “figlio” ??  
> In  
> caso positivo gli errori dove vengono salvati (entrambi in  
> @topic.errorsoppure uno in @  
> topic.errors e uno in @post.errors)??
