I would like a best practice for this kind of problem
I have items
, categories
and category_item
table for a many to many relationship
I have 2 models with these validations rules
class Category extends Basemodel { public static $rules = array( 'name' => 'required|min:2|max:255' ); .... class Item extends BaseModel { public static $rules = array( 'title' => 'required|min:5|max:255', 'content' => 'required' ); .... class Basemodel extends Eloquent{ public static function validate($data){ return Validator::make($data, static::$rules); } }
I don't know how to validate these 2 sets of rules from only one form with category, title and content fields.
For the moment I just have a validation for the item but I don't know what's the best to do:
- create a new set of rules in my controller -> but it seems redundant
- sequentially validate Item then category -> but I don't know how to handle validations errors, do I have to merges them? and how?
- a 3rd solution I'm unaware of
here is my ItemsController@store method
/** * Store a newly created item in storage. * * @return Redirect */ public function store() { $validation= Item::validate(Input::all()); if($validation->passes()){ $new_recipe = new Item(); $new_recipe->title = Input::get('title'); $new_recipe->content = Input::get('content'); $new_recipe->creator_id = Auth::user()->id; $new_recipe->save(); return Redirect::route('home') ->with('message','your item has been added'); } else{ return Redirect::route('items.create')->withErrors($validation)->withInput(); } }
I am very interested on some clue about this subject
thanks