rails 3.2.10
mais je vois pas de diffence entre ton code et le mien :
def self.table_name
debugger
'franceusers'
end
et
def self.table_name
"special_" + super
end
hormis le "super", mais ca ne devrait rien changer, 'franceusers' dans mon
ca est juste pour tester.
Le jeudi 7 mars 2013 14:56:42 UTC+1, Guirec Corbel a écrit :
>
> La différence peut être la version de Rails que tu utilise. Laquelle
> est-ce?
>
> (Sérieusement, parle en à ton boss. C'est une bonne pratique de faire ça
> comme ça.)
>
> Le 7 mars 2013 08:53, oto iashvili <[email protected] <javascript:>>a
> écrit :
>
>> la methode table_name_prefix existe est fonctionne tres bien pour mes
>> autres classes
>> http://apidock.com/rails/ActiveRecord/Base/table_name_prefix/class
>>
>> Le jeudi 7 mars 2013 14:47:37 UTC+1, pierre nespo a écrit :
>>>
>>> La méthode `table_name_prefix` n’existe **pas, il n'y a donc aucune
>>> raison pour qu'elle soit appelée. cf: https://github.com/rails/**
>>> rails/blob/3-2-13/**activerecord/lib/active_**record/model_schema.rb<https://github.com/rails/rails/blob/3-2-13/activerecord/lib/active_record/model_schema.rb>
>>>
>>> De plus changer le nom de la table "dynamiquement" dans le model n'est
>>> pas une bonne idée car tu agis sur la Classe User et pas sur l'Instance
>>> User, donc même si cela semble fonctionner en développement, tu risques
>>> d'avoir des surprises une fois en production (car les classes sont mises en
>>> cache).
>>>
>>> Pierre
>>>
>>>
>>> 2013/3/7 Guirec Corbel <[email protected]>
>>>
>>>> Pourrais-tu préciser pourquoi c'est impossible?
>>>>
>>>> Le 7 mars 2013 08:32, oto iashvili <[email protected]> a écrit :
>>>>
>>>> impossible dans mon cas. Vraiment besoin de separer les tables. Et ca
>>>>> fonctionne tres bien pour mes autres tables (post, image, ...) , seul la
>>>>> table user pose pb!
>>>>>
>>>>> Le jeudi 7 mars 2013 14:27:07 UTC+1, Guirec Corbel a écrit :
>>>>>>
>>>>>> Je suis tout à fait d'accord avec Thibeaut. Tu peux utiliser des
>>>>>> scopes pour segmenter tes utilisateurs par pays.
>>>>>>
>>>>>> Le 7 mars 2013 08:23, Thibaut Barrère <[email protected]> a écrit
>>>>>> :
>>>>>>
>>>>>>> Bonjour,
>>>>>>>
>>>>>>> mon conseil: regroupe les deux tables en une seule si tu peux
>>>>>>> (vraiment), avec une colonne pour identifier le pays etc. Sur la durée
>>>>>>> ça
>>>>>>> sera plus simple, si tu peux le faire.
>>>>>>>
>>>>>>> Thibaut
>>>>>>> --
>>>>>>> http://www.logeek.fr
>>>>>>>
>>>>>>>
>>>>>>> 2013/3/7 oto iashvili <[email protected]>
>>>>>>>
>>>>>>>> Bonjour,
>>>>>>>> pour mon appli, j'ai plusieurs tables utilisateurs (franceusers,
>>>>>>>> belgiqueusers, ...), et j'aimerais utilisé l'une ou l'autre en
>>>>>>>> fonction du
>>>>>>>> domaine.
>>>>>>>> J'ai essayé avec table_name_prefix et table_name, mais ca ne semble
>>>>>>>> pas fonctionner
>>>>>>>>
>>>>>>>> class User < ActiveRecord::Base
>>>>>>>> rolify
>>>>>>>> # Include default devise modules. Others available are:
>>>>>>>> # :token_authenticatable, :confirmable,
>>>>>>>> # :lockable, :timeoutable and :omniauthable
>>>>>>>> devise :database_authenticatable, :registerable, #:confirmable,
>>>>>>>> :recoverable, :rememberable, :trackable, :validatable
>>>>>>>>
>>>>>>>> def self.table_name
>>>>>>>> debugger
>>>>>>>> 'franceusers'
>>>>>>>> end
>>>>>>>>
>>>>>>>> def self.table_name_prefix
>>>>>>>> debugger
>>>>>>>> 'france'
>>>>>>>> end
>>>>>>>>
>>>>>>>>
>>>>>>>> grace a debugger, j'ai pu voir que self.table_name est bien appelé,
>>>>>>>> mais pas self.table_name_prefix. Et meme si self.table_name, devise va
>>>>>>>> chercher les utilisateurs dans la table users et non franceusers
>>>>>>>>
>>>>>>>> pourtant
>>>>>>>> User.table_name renvoie bien "franceusers" et
>>>>>>>> User.table_name_prefix renvoie bien "france"
>>>>>>>>
>>>>>>>> ya a til qqch de spécial a faire pour que cela marche ?
>>>>>>>>
>>>>>>>> merci
>>>>>>>>
>>>>>>>> --
>>>>>>>> --
>>>>>>>> Vous avez reçu ce message, car vous êtes abonné au groupe
>>>>>>>> "Railsfrance" de Google Groups.
>>>>>>>> Pour transmettre des messages à ce groupe, envoyez un e-mail à
>>>>>>>> l'adresse [email protected]
>>>>>>>> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>>>>>>>> railsfrance...@**googlegroups.**com
>>>>>>>>
>>>>>>>> ---
>>>>>>>> Vous recevez ce message, car vous êtes abonné au groupe Google
>>>>>>>> Groupes Railsfrance.
>>>>>>>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
>>>>>>>> concernant, envoyez un e-mail à l'adresse railsfrance...@**
>>>>>>>> googlegroups.**com.
>>>>>>>>
>>>>>>>> Pour plus d'options, visitez le site https://groups.google.com/**
>>>>>>>> grou**ps/opt_out <https://groups.google.com/groups/opt_out> .
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> --
>>>>>>> Vous avez reçu ce message, car vous êtes abonné au groupe
>>>>>>> "Railsfrance" de Google Groups.
>>>>>>> Pour transmettre des messages à ce groupe, envoyez un e-mail à
>>>>>>> l'adresse [email protected]
>>>>>>> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>>>>>>> railsfrance...@**googlegroups.**com
>>>>>>>
>>>>>>> ---
>>>>>>> Vous recevez ce message, car vous êtes abonné au groupe Google
>>>>>>> Groupes Railsfrance.
>>>>>>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
>>>>>>> concernant, envoyez un e-mail à l'adresse railsfrance...@**
>>>>>>> googlegroups.**com.
>>>>>>>
>>>>>>> Pour plus d'options, visitez le site https://groups.google.com/**
>>>>>>> grou**ps/opt_out <https://groups.google.com/groups/opt_out> .
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>> --
>>>>> Vous avez reçu ce message, car vous êtes abonné au groupe
>>>>> "Railsfrance" de Google Groups.
>>>>> Pour transmettre des messages à ce groupe, envoyez un e-mail à
>>>>> l'adresse [email protected]
>>>>> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>>>>> railsfrance...@**googlegroups.com
>>>>> ---
>>>>> Vous recevez ce message, car vous êtes abonné au groupe Google
>>>>> Groupes Railsfrance.
>>>>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
>>>>> concernant, envoyez un e-mail à l'adresse railsfrance...@**
>>>>> googlegroups.com.
>>>>> Pour plus d'options, visitez le site https://groups.google.com/**
>>>>> groups/opt_out <https://groups.google.com/groups/opt_out> .
>>>>>
>>>>>
>>>>>
>>>>
>>>> --
>>>> --
>>>> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance"
>>>> de Google Groups.
>>>> Pour transmettre des messages à ce groupe, envoyez un e-mail à
>>>> l'adresse [email protected]
>>>> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>>>> railsfrance...@**googlegroups.com
>>>> ---
>>>> Vous recevez ce message, car vous êtes abonné au groupe Google
>>>> Groupes Railsfrance.
>>>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
>>>> concernant, envoyez un e-mail à l'adresse railsfrance...@**
>>>> googlegroups.com.
>>>> Pour plus d'options, visitez le site https://groups.google.com/**
>>>> groups/opt_out <https://groups.google.com/groups/opt_out> .
>>>>
>>>>
>>>>
>>>
>>> --
>> --
>> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance"
>> de Google Groups.
>> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
>> [email protected] <javascript:>
>> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>> [email protected] <javascript:>
>> ---
>> Vous recevez ce message, car vous êtes abonné au groupe Google
>> Groupes Railsfrance.
>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
>> concernant, envoyez un e-mail à l'adresse
>> [email protected]<javascript:>
>> .
>> Pour plus d'options, visitez le site
>> https://groups.google.com/groups/opt_out .
>>
>>
>>
>
>
--
--
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse
[email protected]
---
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes
Railsfrance.
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant,
envoyez un e-mail à l'adresse [email protected].
Pour plus d'options, visitez le site https://groups.google.com/groups/opt_out .