Sem problemas, no meu caso eu precisei fazer assim... um banco de dados
para login que informa host, database, usuario e senha:
ao fazer login:
public function action_login(){
$usuario = ORM::Factory('users')->where("username", "=",
$_POST['username'])->where("password", "=",
md5($_POST['password']))->find();
$config = ORM::factory("configs", $usuario->id_alert);
Session::instance()->set('config', $config);
}
coloquei em *application/classes/orm.php *o codigo:
<?php defined('SYSPATH') or die('No direct script access.');
class ORM extends Kohana_ORM {
protected function _initialize()
{
// Set the object name and plural name
$this->_object_name = strtolower(substr(get_class($this), 6));
$this->_object_plural = Inflector::plural($this->_object_name);
if ( ! $this->_errors_filename)
{
$this->_errors_filename = $this->_object_name;
}
if ( ! is_object($this->_db))
{
if($this->_db_group == 'default') *// Se for Default
usa dados da session*
{
$this->_db = Database::instance('default', array
(
'type' =>
'mysql',
'connection' =>
array(
'hostname' => Session::instance()->get("config")->host,
'database' => Session::instance()->get("config")->database,
'username' => Session::instance()->get("config")->user,
'password' => Session::instance()->get("config")->password,
'persistent' => FALSE,
),
'table_prefix'
=> '',
'charset'
=> 'utf8',
'caching'
=> FALSE,
'profiling'
=> TRUE,
));
}else{
$this->_db =
Database::instance($this->_db_group); *// Se nao
segue a mesma logica*
}
}
if (empty($this->_table_name))
{
// Table name is the same as the object name
$this->_table_name = $this->_object_name;
if ($this->_table_names_plural === TRUE)
{
// Make the table name plural
$this->_table_name =
Inflector::plural($this->_table_name);
}
}
foreach ($this->_belongs_to as $alias => $details)
{
$defaults['model'] = $alias;
$defaults['foreign_key'] =
$alias.$this->_foreign_key_suffix;
$this->_belongs_to[$alias] = array_merge($defaults,
$details);
}
foreach ($this->_has_one as $alias => $details)
{
$defaults['model'] = $alias;
$defaults['foreign_key'] =
$this->_object_name.$this->_foreign_key_suffix;
$this->_has_one[$alias] = array_merge($defaults,
$details);
}
foreach ($this->_has_many as $alias => $details)
{
$defaults['model'] = Inflector::singular($alias);
$defaults['foreign_key'] =
$this->_object_name.$this->_foreign_key_suffix;
$defaults['through'] = NULL;
$defaults['far_key'] =
Inflector::singular($alias).$this->_foreign_key_suffix;
$this->_has_many[$alias] = array_merge($defaults,
$details);
}
// Load column information
$this->reload_columns();
// Clear initial model state
$this->clear();
}
}
Entao os models que utilizarem o group default ira usar no ORM os
dados da session, no config/database.php os dados da config default
podem ficar em branco... se tiver duvida manda ai!
Em 13 de dezembro de 2012 19:30, Erick Barbosa
<[email protected]>escreveu:
> eria pedir demais se você colocasse um um tutorial mais detalhada ou um
> vídeo mostrando como fazer?
>
--
Rodrigo Monteiro
[email protected]
(11) 96267-9366
--
Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos
Grupos do Google.
Para postar neste grupo, envie um e-mail para [email protected].
Para cancelar a inscrição nesse grupo, envie um e-mail para
[email protected].
Para obter mais opções, visite esse grupo em
http://groups.google.com/group/kohana-php?hl=pt-BR.