Rodrigo .. Até então tá ok [] .. o kohana carrega na seguinte ordem de
prioridade: application/module/system .. existindo em application .. ele
não carregará o do module.

 .. mas acho que vai ter de ir mais embaixo .. no código

Se vc olhar o core .. o ORM tem um metodo de inicialização do framework

protected function _initialize()

.. tlvz precise sobrescreve-la se for setar $_db dinamicamente. aí, neste
caso vc teria de usar Database para buscar o nome do banco de dados do
cliente, já que está alterando o funcionamento de ORM em tempo de execução.

Não tenha medo .. faça a experiencia aí .. e qqer coisa compartilhe o
código.

Em 17 de janeiro de 2012 12:25, Rodrigo Monteiro Ferreira <
[email protected]> escreveu:

> Vou tentar fazer isso, só que agora vou precisar de uma ajuda mais pratica
> pois sou bem iniciante.
>
> Para extender a classe orm do kore, eu tenho criar o arquivo "orm.php"
> dentro de "application/casses/" com o  conteudo:
>
> class ORM extends Kohana_ORM {
>    protected $_db = null;
>
>   public function setDb($value){
>     $this->_db = $value;
>   }
>
> }
>
> É assim mesmo que se faz? usando assim o kohana vai saber que a instancia
> vai ser da minha classe e da classe que ele já vem "nativa"?
>
>
> Em 17 de janeiro de 2012 12:14, felipe moraes <[email protected]>escreveu:
>
> Veja orm e kohana_orm
>>
>> Se orm simplesmente extender kohana_orm melhor ainda ..
>>
>> Vc pode criar um metodo changeDB(Database $db) que altere $_db .. em
>> application/classes/orm.php
>>
>> O que pode ajudar é vc alterar $_db para static protected. Ai ja fica
>> para todos os orms depois do login .. basta lembrar que em
>> Controller::before vc deve setar o banco de acordo com o usuario logado
>> Em 17/01/2012 12:06, "Rodrigo Monteiro Ferreira" <
>> [email protected]> escreveu:
>>
>>  Estou vendo uma solucao nessa linha, o ruim é que sou novato no
>>> framework...
>>>
>>> Mas  pensei no seguinte:
>>>
>>> Na model eu consigo alterar livremente o table_name, assim:
>>>
>>>  protected $_table_name = 'minha_tabela';
>>>
>>> E nao deixa:
>>>
>>> protected $_db = 'meu_banco';
>>>
>>> Acho que tenho que estender o ORM, fazer um metodo "set" para a variavel
>>> db, e ver se tem que alterar a factory para ela nao sobrescrever com o
>>> valor do database.php de qualquer jeito
>>>
>>> Mas não sei nem por onde eu começo...rsrs
>>>
>>> Em 17 de janeiro de 2012 11:43, felipe moraes <[email protected]>escreveu:
>>>
>>>> Com relacao ao banco ...
>>>>
>>>> $_db Database é protected e nao tem uma interface de alteracao.
>>>>
>>>> O que poderia ser feito é pegar o banco via sessao .. pensei o seguinte
>>>> ...
>>>>
>>>> Vc extenderia ORM .. criaria um metodo static que set o banco antes de
>>>> fazer factory() ... ou botaria automatico
>>>>
>>>> Compartilhe sua solucao conosco :)
>>>> Em 17/01/2012 11:20, "felipe moraes" <[email protected]> escreveu:
>>>>
>>>> Rodrigo ...
>>>>>
>>>>> Pq vc nao coloca essa autenticacao como um ws REST e isola
>>>>> autenticacao do restante da aplicacao?
>>>>> Em 17/01/2012 11:17, "Rodrigo Monteiro Ferreira" <
>>>>> [email protected]> escreveu:
>>>>>
>>>>>> Eu preciso disso pq cada cliente tem um binario que roda a cada 2
>>>>>> minutos procurando no seu proprio db as mensagens para efetuar o 
>>>>>> disparo...
>>>>>> Entao todos usam o mesmo db para login, mas cada um tem seu proprio 
>>>>>> db(com
>>>>>> estrutra identica) para o envio de msg.
>>>>>>
>>>>>> Entao tenho que saber como mudo o nome da variavel.
>>>>>>
>>>>>> Em 17 de janeiro de 2012 11:11, tarsis lima 
>>>>>> <[email protected]>escreveu:
>>>>>>
>>>>>>> Não entendi por que você precisa salvar o nome da database no banco.
>>>>>>>
>>>>>>> Em 17 de janeiro de 2012 11:08, Get <[email protected]> escreveu:
>>>>>>>
>>>>>>> Creio que você tenha que modificar o arquivo de configuração do
>>>>>>>> banco e usar sessão pra fazer isso aí.
>>>>>>>>
>>>>>>>> Caso contrário o banco vai ser alterado para todos.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> 2012/1/17 Rodrigo Monteiro Ferreira <[email protected]>
>>>>>>>>
>>>>>>>>> Galera,
>>>>>>>>>
>>>>>>>>> O que eu vou precisar fazer é meio incomum, sera que voces podem
>>>>>>>>> me ajudar?
>>>>>>>>>
>>>>>>>>> Eu tenho um banco de dados só para autenticacao chamado de "user"
>>>>>>>>> no meu "database.php" e nele que diz o nome do meu database 
>>>>>>>>> "default", algo
>>>>>>>>> como:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> +----+-----------+----------------------------------+---------------------+
>>>>>>>>> | id | username  | password                | database            |
>>>>>>>>>
>>>>>>>>> +----+-----------+----------------------------------+---------------------+
>>>>>>>>> |  1 | rmonteiro | 202cb962ac59075b9  | database_app |
>>>>>>>>>
>>>>>>>>> +----+-----------+----------------------------------+---------------------+
>>>>>>>>>
>>>>>>>>> depois que logar tenho que mudar o nome do banco no meu
>>>>>>>>> "database.php", algo como:
>>>>>>>>>
>>>>>>>>> conexao['default']['database' ]  => 'database_app';
>>>>>>>>>
>>>>>>>>> Nao sei se ficou muito confuso...rsrs
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Em 10 de janeiro de 2012 15:13, tarsis lima <[email protected]
>>>>>>>>> > escreveu:
>>>>>>>>>
>>>>>>>>> nos models com banco diferente do default vc coloca
>>>>>>>>>>  protected $_db = 'alternate';
>>>>>>>>>>
>>>>>>>>>> Substituindo pelo nome do seu banco alternativo;
>>>>>>>>>>
>>>>>>>>>> Em 10 de janeiro de 2012 09:39, Get <[email protected]>escreveu:
>>>>>>>>>>
>>>>>>>>>> Você pode configurar qual base vai usar em cada model.
>>>>>>>>>>>
>>>>>>>>>>> Assim você pode usar o orm normalmente sem se preocupar com o
>>>>>>>>>>> banco.
>>>>>>>>>>>
>>>>>>>>>>> @rafaelget
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> 2012/1/9 felipe moraes <[email protected]>
>>>>>>>>>>>
>>>>>>>>>>>> Eu nunca usei com 2 bancos .. mas deve ter no construtor de orm
>>>>>>>>>>>> ou database o parametro para setar o banco .. default, etc.
>>>>>>>>>>>>
>>>>>>>>>>>> Com certeza em Database vc configura isso ..
>>>>>>>>>>>>
>>>>>>>>>>>> Ja orm nao sei como ficaria para o fw decidir sobre qual banco
>>>>>>>>>>>> deve executar
>>>>>>>>>>>> Em 09/01/2012 19:17, "Rodrigo Monteiro Ferreira" <
>>>>>>>>>>>> [email protected]> escreveu:
>>>>>>>>>>>>
>>>>>>>>>>>>  Galera,
>>>>>>>>>>>>>
>>>>>>>>>>>>> Como que faço para trabalhar com 2 db no kohana?
>>>>>>>>>>>>>
>>>>>>>>>>>>> Vi que da para colocar mais de um no arquivo
>>>>>>>>>>>>> config/database.php:
>>>>>>>>>>>>>
>>>>>>>>>>>>> return array
>>>>>>>>>>>>> (
>>>>>>>>>>>>>  'default' => array
>>>>>>>>>>>>> (
>>>>>>>>>>>>> 'type'       => 'mysql',
>>>>>>>>>>>>>  'connection' => array(
>>>>>>>>>>>>> /**
>>>>>>>>>>>>>  * The following options are available for MySQL:
>>>>>>>>>>>>>  *
>>>>>>>>>>>>>  * string   hostname     server hostname, or socket
>>>>>>>>>>>>>  * string   database     database name
>>>>>>>>>>>>>  * string   username     database username
>>>>>>>>>>>>>  * string   password     database password
>>>>>>>>>>>>>  * boolean  persistent   use persistent connections?
>>>>>>>>>>>>>  * array    variables    system variables as "key => value"
>>>>>>>>>>>>> pairs
>>>>>>>>>>>>>  *
>>>>>>>>>>>>>  * Ports and sockets may be appended to the hostname.
>>>>>>>>>>>>>  */
>>>>>>>>>>>>>  'hostname'   => 'localhost',
>>>>>>>>>>>>> 'database'   => 'interface',
>>>>>>>>>>>>>  'username'   => 'root',
>>>>>>>>>>>>> 'password'   => 'spring123',
>>>>>>>>>>>>>  'persistent' => FALSE,
>>>>>>>>>>>>> ),
>>>>>>>>>>>>> 'table_prefix' => '',
>>>>>>>>>>>>>  'charset'      => 'utf8',
>>>>>>>>>>>>> 'caching'      => FALSE,
>>>>>>>>>>>>>  'profiling'    => TRUE,
>>>>>>>>>>>>> ),
>>>>>>>>>>>>> 'app' => array (
>>>>>>>>>>>>>  'type'       => 'mysql',
>>>>>>>>>>>>> 'connection' => array(
>>>>>>>>>>>>>  /**
>>>>>>>>>>>>>  * The following options are available for MySQL:
>>>>>>>>>>>>>  *
>>>>>>>>>>>>>  * string   hostname     server hostname, or socket
>>>>>>>>>>>>>  * string   database     database name
>>>>>>>>>>>>>  * string   username     database username
>>>>>>>>>>>>>  * string   password     database password
>>>>>>>>>>>>>  * boolean  persistent   use persistent connections?
>>>>>>>>>>>>>  * array    variables    system variables as "key => value"
>>>>>>>>>>>>> pairs
>>>>>>>>>>>>>  *
>>>>>>>>>>>>>  * Ports and sockets may be appended to the hostname.
>>>>>>>>>>>>>  */
>>>>>>>>>>>>>  'hostname'   => 'localhost',
>>>>>>>>>>>>> 'database'   => 'app',
>>>>>>>>>>>>>  'username'   => 'root',
>>>>>>>>>>>>> 'password'   => '',
>>>>>>>>>>>>>  'persistent' => FALSE,
>>>>>>>>>>>>> );
>>>>>>>>>>>>>
>>>>>>>>>>>>> Como eu abro uma conexão em cada?
>>>>>>>>>>>>>
>>>>>>>>>>>>> Eu vou precisar tambem que o nome do dabatase "app" venha de
>>>>>>>>>>>>> uma tabela do "interface" alguem sabe como fazer isso?
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Rodrigo Monteiro
>>>>>>>>>>>>>
>>>>>>>>>>>>>  --
>>>>>>>>>>>>> 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.
>>>>>>>>>>>>>
>>>>>>>>>>>>  --
>>>>>>>>>>>> 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.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>  --
>>>>>>>>>>> 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.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>  --
>>>>>>>>>> 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.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Rodrigo Monteiro
>>>>>>>>> Sistemas Web
>>>>>>>>> [email protected]
>>>>>>>>> (11) 6267-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.
>>>>>>>>>
>>>>>>>>
>>>>>>>>  --
>>>>>>>> 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.
>>>>>>>>
>>>>>>>
>>>>>>>  --
>>>>>>> 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.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Rodrigo Monteiro
>>>>>> Sistemas Web
>>>>>> [email protected]
>>>>>> (11) 6267-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.
>>>>>>
>>>>>  --
>>>> 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.
>>>>
>>>
>>>
>>>
>>> --
>>> Rodrigo Monteiro
>>> Sistemas Web
>>> [email protected]
>>> (11) 6267-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.
>>>
>>  --
>> 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.
>>
>
>
>
> --
> Rodrigo Monteiro
> Sistemas Web
> [email protected]
> (11) 6267-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.
>



-- 
http://felipebastosweb.com.br
http://twitter.com/felipebastosweb

-- 
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.

Responder a