title: Controller vs. Model - Need explanation
body: <p>I'm on the beginning of my "Learn MVC" way. Basically, I don't have big problems with object-oriented programming however there's one technical aspect that needs clarification. It seems that my theory isn't quite good enough.</p>
  
  <p>Currently, I'm using KohanaPHP framework, version 3.</p>
  
  <p>Example situation:
  I have a website, where user can submit an article.</p>
  
  <p>So I have following structure:</p>
  
  <pre><code>classes/
      /controllers/
          article.php
      /models/
          articles.php
  </code></pre>
  
  <p>So far so good. I don't have problems with models that extends Kohana_Model however I'm not sure if I'm using the correct way models that are using ORM.</p>
  
  <p>Basically when using models extending Kohana_Model I'll put all logical operations in model. Should I do the same for models using ORM? In many example over the Net I saw controllers that was performing logical operations on user input/data from database which is incorrect in my opinion.</p>
  
  <p>Let's say I need to get few rows from database so I create proper method in model and returning the object. I think it's correct, isn't it?</p>
  
  <p>Basically, all operations on user input/data (select from db, insert into db, validation) I put in the models. That's the way I understand MVC design pattern. Models should take care about all "mechanic" operations and controller is only a "bridge" between models/views and it's a "front" engine.</p>
  
  <p>Is it a correct approach?</p>
  
  <p>I know that might be a silly question for more advanced users however I want to learn only good practices. If anyone could deliver some clarification, I'll be delighted.</p>