Просмотров: 64395
										Дата последнего изменения: 27.10.2020					
					
			
							
			
			
				
									
						Сложность урока:
						
							
								
									
										4 уровень - сложно, требуется сосредоточиться, внимание деталям и точному следованию инструкции.
									 
								 
							 
														
															
									5
								
														 
					 
				
				
								
					Недоступно в лицензиях:
					
													Ограничений нет											
				 
				
							 
		 
	 	
	
		В дополнении к GetList существует еще ряд методов, которые позволяют в более короткой форме получить определенные данные:
- getById($id) - производит выборку по первичному ключу;
- getByPrimary($primary, array $parameters) - выборка по первичному ключу с возможностью указания дополнительных параметров;
Примечание: в обоих методах мы можем как передать idв виде числа, так и явно указать какой элемент является ключом, передав массив. Массив необходимо использовать, если у вас есть несколькоprimaryполей. Если вы передаете в массиве элемент, который не является первичным ключом, то это будет ошибкой.
 BookTable::getById(1);
BookTable::getByPrimary(array('ID' => 1));
// такие вызовы будут аналогичны следующему вызову getList:
BookTable::getList(array(
	'filter' => array('=ID' => 1)
));
- getRowById($id) - производит выборку по первичному ключу, но возвращается массив данных;
 $row = BookTable::getRowById($id);
// аналогичный результат можно получить так:
$result = BookTable::getById($id);
$row = $result->fetch();
// или так
$result = BookTable::getList(array(
	'filter' => array('=ID' => $id)
));
$row = $result->fetch();
- getRow(array $parameters) - производит выборку не по первичному ключу, а по каким-то другим параметрам. При этом возвращается только одна запись.
 $row = BookTable::getRow(array(
	'filter' => array('%=TITLE' => 'Patterns%'),
	'order' => array('ID')
));
// аналогичный результат можно получить так:
$result = BookTable::getList(array(
	'filter' => array('%=TITLE' => 'Patterns%'),
	'order' => array('ID')
	'limit' => 1
));
$row = $result->fetch();