Tried it, and with the @property method it works fine :)
Thanks for your help :)

On Jul 26, 3:20 pm, bloeper <[email protected]> wrote:
> First of thanks for the answer :)
>
> Well it's not really my choice of working this way.. Since in the wiki
> tutorial they certainly use the init method...
> And I don't think it violates anything... Since you can assign values
> to an object at the creation of an object.. That's were all
> constructors are for?
>
> Well at setting I only need the urlify e.g creating it, afterwards it
> isn't needed.
>
> I'm gonna take a look at your solution haven't thought of it that way.
>
> Thanks :)
>
> I think you violate the design of SA declarative here. You there
> create an
>
> > instance & *then* set it's attributes. You do not use a rich __init__.
>
> > And your reasoning for using a rich __init__ instead is flawed - if you'd 
> > need
> > the urlify for slug, you'd certainly also need it for setting it on an
> > existing instance.
>
> > So the solution to this is simple. Make slug a property. I'm not sure what 
> > the
> > best way to do this is in declarative, my attempt would simply be do 
> > declare a
> > private attribute _slug (with DB-name slug), and then do the usual property
> > getter/setter stuff to create slug.
>
> On Jul 26, 3:16 pm, "Diez B. Roggisch" <[email protected]> wrote:
>
> > On Saturday, July 24, 2010 17:22:33 bloeper wrote:
> > > Hi All,
>
> > > Sorry for my question flood, but I am trying to get this to work.
> > > I have the following init in a blog model:
> > > def __init__( self, title, content, user_id):
> > >       self.title = title
> > >       self.slug = urlify( title )
> > >       self.date = datetime.now()
> > >       self.content = content
> > >       self.user_id = user_id
>
> > > When i create some default records with the web-setup it works fine,
> > > but when I try to add a record trough the web admin i get the error
> > > that the init function expects 4 parameters and that 1 is given.
> > > How does the admin add records?
> > > In the admin I do fill in all the fields, but it seems to me it posts
> > > those parameters in one list or something...
> > > Anyone got an idea how to fix this...
> > > I need the init to work because of the urlify function I use. (this
> > > function makes from the title a save url)
> > > For instance: Test blog goes through urlify and the output becomse:
> > > test-blog
>
> > I think you violate the design of SA declarative here. You there create an
> > instance & *then* set it's attributes. You do not use a rich __init__.
>
> > And your reasoning for using a rich __init__ instead is flawed - if you'd 
> > need
> > the urlify for slug, you'd certainly also need it for setting it on an
> > existing instance.
>
> > So the solution to this is simple. Make slug a property. I'm not sure what 
> > the
> > best way to do this is in declarative, my attempt would simply be do 
> > declare a
> > private attribute _slug (with DB-name slug), and then do the usual property
> > getter/setter stuff to create slug.
>
> > Diez

-- 
You received this message because you are subscribed to the Google Groups 
"TurboGears" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/turbogears?hl=en.

Reply via email to