Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden Nicolai Constantin Reuschling
Am 15. Februar 2011 13:51 schrieb rubyonrails...@galt.de
rubyonrails...@galt.de:
 Hallo Jürgen,

 ich verwende eh zwei verschiedene Controller. Insofern ist die Steuerung der 
 beiden Fälle kein Problem.

 Allerdings möchte ich nicht alle Validations deaktivieren, was bei 
 „user.save(:validate = false)“ der Fall ist, sondern nur einen Teil davon. 
 Einige Validierungen sollen schon auch in der Administration stattfinden.


Warum verwendest Du nicht zwei verschiedene Modelle oder Vererbung über STI?

Nicolai
___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden Jens Krämer
Hallo,

On 15.02.2011, at 12:59, rubyonrails...@galt.de wrote:
[..]
 
 Mir ist bisher nichts besseres eingefallen als eine Kombination aus einem 
 virtuellen attribut als Schalter (der im jeweiligen Controller „angeknipst“ 
 wird) und der if-Bedingung in der Validierung:
 
 class CustomerUser  ActiveRecord::Base
 
  validates :telephone, :presence = true, :if = lambda{ |u| 
 u.validate_for_user? }


etwas schöner sieht es ohne das lambda aus:

validates :telephone, :presence = true, :if = :validate_for_user?

Falls du mehrere solcher Validations hast, die alle von derselben Bedingung 
abhängen, ist with_options dein Freund [1]


Grüße,
Jens


[1] http://geek.littleredstring.com/18-validations-with_options


--
Jens Krämer
Finkenlust 14, 06449 Aschersleben, Germany
VAT Id DE251962952
http://www.jkraemer.net/


___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden rubyonrails...@galt.de
Weil es sich um dasselbe Modell, d. h. denselben Datensatz handelt, nur 
verschiedene Bearbeitungsmodi.

Wenn ich STI oder zwei Modelle verwenden würde dann müßte ich ja für jeden User 
zwei Datensätze anlegen.

STI bedeutet, daß man zwei Models hat, die sich dieselbe Tabelle teilen, aber 
eben unterschiedliche Datensätze. Das ist hier nicht der Fall.

Beide, sowohl der Nutzer am Frontend, also auch der Administrator am Backend, 
sollen den _selben_ Datensatz bearbeiten können, aber die Validierung ist eine 
Unterschiedliche.

Am 15.02.2011 um 13:55 schrieb Nicolai Constantin Reuschling:

 Am 15. Februar 2011 13:51 schrieb rubyonrails...@galt.de
 rubyonrails...@galt.de:
 Hallo Jürgen,
 
 ich verwende eh zwei verschiedene Controller. Insofern ist die Steuerung der 
 beiden Fälle kein Problem.
 
 Allerdings möchte ich nicht alle Validations deaktivieren, was bei 
 „user.save(:validate = false)“ der Fall ist, sondern nur einen Teil davon. 
 Einige Validierungen sollen schon auch in der Administration stattfinden.
 
 
 Warum verwendest Du nicht zwei verschiedene Modelle oder Vererbung über STI?
 
 Nicolai
 ___
 rubyonrails-ug mailing list
 rubyonrails-ug@headflash.com
 http://mailman.headflash.com/listinfo/rubyonrails-ug

___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden rubyonrails...@galt.de
Wow, Bingo! Genau _das_ habe ich gesucht.

Besten Dank,

Michael Kastner

Am 15.02.2011 um 14:12 schrieb Jens Krämer:

 Hallo,
 
 On 15.02.2011, at 12:59, rubyonrails...@galt.de wrote:
 [..]
 
 Mir ist bisher nichts besseres eingefallen als eine Kombination aus einem 
 virtuellen attribut als Schalter (der im jeweiligen Controller „angeknipst“ 
 wird) und der if-Bedingung in der Validierung:
 
 class CustomerUser  ActiveRecord::Base
 
 validates :telephone, :presence = true, :if = lambda{ |u| 
 u.validate_for_user? }
 
 
 etwas schöner sieht es ohne das lambda aus:
 
 validates :telephone, :presence = true, :if = :validate_for_user?
 
 Falls du mehrere solcher Validations hast, die alle von derselben Bedingung 
 abhängen, ist with_options dein Freund [1]
 
 
 Grüße,
 Jens
 
 
 [1] http://geek.littleredstring.com/18-validations-with_options
 
 
 --
 Jens Krämer
 Finkenlust 14, 06449 Aschersleben, Germany
 VAT Id DE251962952
 http://www.jkraemer.net/
 
 
 ___
 rubyonrails-ug mailing list
 rubyonrails-ug@headflash.com
 http://mailman.headflash.com/listinfo/rubyonrails-ug
 

___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden Nicolai Constantin Reuschling
Ich habe nicht von AktiveRecord-Modellen gesprochen. Intuitiv würde
ich sagen, dass Dein Problem ein guter Use Case für ActiveModel ist.

Viele Grüße,

Nicolai
___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden Werner Laude

Am 15.02.2011 um 12:59 schrieb rubyonrails...@galt.de:

 
 Mir ist bisher nichts besseres eingefallen als eine Kombination aus einem 
 virtuellen attribut als Schalter (der im jeweiligen Controller „angeknipst“ 
 wird) und der if-Bedingung in der Validierung:
 
 class CustomerUser  ActiveRecord::Base
 
  validates :telephone, :presence = true, :if = lambda{ |u| 
 u.validate_for_user? }
 
 

wie wär's den current_user abzufragen?

validates :telephone,  :unless = current_user

Gruß

Werner Laude
http://www.webagentur-laude.de





___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden Nicolai Constantin Reuschling
 wie wär's den current_user abzufragen?

Im Modell wohl eher nicht.
___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden Peter Schröder
Werner hat's mal wieder nicht kapiert...

Ich hatte schon mal angefangen einen scoped_validator zu schreiben, hab's aber 
nicht zu ende gebracht.

ein wenig pseudocode:

validate_scoped :if = your_lambda do
  validate_existence...
  validate_presence...
end

wenn interesse besteht, dannwürde ich mich noch mal ran wagen.

Am 15.02.2011 um 15:31 schrieb Nicolai Constantin Reuschling:

 wie wär's den current_user abzufragen?
 
 Im Modell wohl eher nicht.
 ___
 rubyonrails-ug mailing list
 rubyonrails-ug@headflash.com
 http://mailman.headflash.com/listinfo/rubyonrails-ug

___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden Werner Laude

Am 15.02.2011 um 15:34 schrieb Peter Schröder:

 Werner hat's mal wieder nicht kapiert...
 

Tja Herr Bademeister..

immer noch hier..?
.

Die Idee an sich hatte ja immerhin Charme...


Werner Laude
http://www.webagentur-laude.de





___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden Daniel Harrington
find ich gut. go peter, go peter ...
___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden Peter Schroeder
ich hab grade mal einen prototyp gebaut.

vielleicht hat ja jemand interesse:

https://github.com/phoet/scoped_validations/blob/master/spec/user.rb

gute nacht
___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden Jens Krämer
Hallo,

On 15.02.2011, at 22:25, Peter Schroeder wrote:

 ich hab grade mal einen prototyp gebaut.
 
 vielleicht hat ja jemand interesse:
 
 https://github.com/phoet/scoped_validations/blob/master/spec/user.rb

http://apidock.com/rails/v3.0.0/Object/with_options

Vielleicht ist's ja einfach schon zu spät aber ich seh' grad den Mehrwert 
deiner Lösung nicht...

Grüße,
Jens


--
Jens Krämer
Finkenlust 14, 06449 Aschersleben, Germany
VAT Id DE251962952
http://www.jkraemer.net/


___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug


Re: [Rubyonrails-ug] Unterschiedliche Validierungsfälle

2011-02-15 Diskussionsfäden peter schröder
Hi Jens,

die kannte ich noch nicht!

 wenn's mit validations auch funktioniert, dann wäre das ja eine
schönere lösung als an jede validation :unless :admin dran zu
schreiben

von meiner uschi deluxe gesendet

Am 15.02.2011 um 22:46 schrieb Jens Krämer j...@jkraemer.net:

 Hallo,

 On 15.02.2011, at 22:25, Peter Schroeder wrote:

 ich hab grade mal einen prototyp gebaut.

 vielleicht hat ja jemand interesse:

 https://github.com/phoet/scoped_validations/blob/master/spec/user.rb

 http://apidock.com/rails/v3.0.0/Object/with_options

 Vielleicht ist's ja einfach schon zu spät aber ich seh' grad den Mehrwert 
 deiner Lösung nicht...

 Grüße,
 Jens


 --
 Jens Krämer
 Finkenlust 14, 06449 Aschersleben, Germany
 VAT Id DE251962952
 http://www.jkraemer.net/


 ___
 rubyonrails-ug mailing list
 rubyonrails-ug@headflash.com
 http://mailman.headflash.com/listinfo/rubyonrails-ug
___
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug