Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Zope: Users

Checking multiple variables existence

 

 

Zope users RSS feed   Index | Next | Previous | View Threaded


justin.dunsworth at gmail

Jan 24, 2012, 8:57 AM

Post #1 of 5 (531 views)
Permalink
Checking multiple variables existence

Is there any way to check if multiple variables exist in the same if
statement? Right now I am having to writing multiple nested if statements
but can be quite cumbersome... so just looking for an easier way.

Currently I'd have to write:
<dtml-if var1>
<dtml-if var2>
<dtml-if var3>
<dtml-else>
</dtml-if>
<dtml-else>
</dtml-if>
<dtml-else>
</dtml-if>

When it would be easier to do something like:

<dtml-if "var1 and var2 and var3">
<dtml-else>
</dtml-if>

I've tried multiple different methods to accomplish this but haven't had
any luck... so is there an easier way to check multiple variables existence
in the same check?

Thanks.


lukesh at seznam

Jan 24, 2012, 9:08 AM

Post #2 of 5 (513 views)
Permalink
Re: Checking multiple variables existence [In reply to]

it works:

<dtml-if "var1=='OK' and var2==3 and var3 in ('a',1,'1') and var4 != 'OK'
and var5">

note1: var5 is string, true when <>'' nor None but must exists

note2: var5 is int, true when <>0 nor None but must exists

<dtml-else>
</dtml-if>


----- Puvodní zpráva -----
Od: Justin Dunsworth

Is there any way to check if multiple variables exist in the same if
statement? Right now I am having to writing multiple nested if statements
but can be quite cumbersome... so just looking for an easier way.


Currently I'd have to write:
<dtml-if var1>
<dtml-if var2>
<dtml-if var3>
<dtml-else>
</dtml-if>
<dtml-else>
</dtml-if>
<dtml-else>
</dtml-if>


When it would be easier to do something like:


<dtml-if "var1 and var2 and var3">
<dtml-else>
</dtml-if>


_______________________________________________
Zope maillist - Zope [at] zope
https://mail.zope.org/mailman/listinfo/zope
** No cross posts or HTML encoding! **
(Related lists -
https://mail.zope.org/mailman/listinfo/zope-announce
https://mail.zope.org/mailman/listinfo/zope-dev )


justin.dunsworth at gmail

Jan 24, 2012, 9:15 AM

Post #3 of 5 (511 views)
Permalink
Re: Checking multiple variables existence [In reply to]

These are required to be set, though.. right?

Doing:
<dtml-call "REQUEST.set('var_one','OK')">
<dtml-call "REQUEST.set('var_two','OK')">

<dtml-if "var_one=='OK' and var_two=='OK'"> Set
<dtml-else> Not Set
</dtml-if>

works but taking away var_two and I get a NameError: name 'var_two' is not
defined. This is what I'm trying to check is if they exist. Not
particularly looking to match them to anything just yet but rather just to
see if they exist. If they throw an error then it's not working.

On Tue, Jan 24, 2012 at 11:08 AM, Jaroslav Lukesh <lukesh [at] seznam> wrote:

> it works:
>
> <dtml-if "var1=='OK' and var2==3 and var3 in ('a',1,'1') and var4 != 'OK'
> and var5">
>
> note1: var5 is string, true when <>'' nor None but must exists
>
> note2: var5 is int, true when <>0 nor None but must exists
>
> <dtml-else>
> </dtml-if>
>
>
> ----- Puvodní zpráva ----- Od: Justin Dunsworth
>
>
> Is there any way to check if multiple variables exist in the same if
> statement? Right now I am having to writing multiple nested if statements
> but can be quite cumbersome... so just looking for an easier way.
>
>
> Currently I'd have to write:
> <dtml-if var1>
> <dtml-if var2>
> <dtml-if var3>
> <dtml-else>
> </dtml-if>
> <dtml-else>
> </dtml-if>
> <dtml-else>
> </dtml-if>
>
>
> When it would be easier to do something like:
>
>
> <dtml-if "var1 and var2 and var3">
> <dtml-else>
> </dtml-if>
>
>
>


lukesh at seznam

Jan 24, 2012, 9:43 AM

Post #4 of 5 (514 views)
Permalink
Re: Checking multiple variables existence [In reply to]

Yes, use like that

<dtml-unless var1>
<dtml-call "REQUEST.set('var1','')">
</dtml-unless>


----- Puvodní zpráva -----
Od: Justin Dunsworth

These are required to be set, though.. right?


Doing:
<dtml-call "REQUEST.set('var_one','OK')">
<dtml-call "REQUEST.set('var_two','OK')">


<dtml-if "var_one=='OK' and var_two=='OK'"> Set
<dtml-else> Not Set
</dtml-if>


works but taking away var_two and I get a NameError: name 'var_two' is not
defined. This is what I'm trying to check is if they exist. Not particularly
looking to match them to anything just yet but rather just to see if they
exist. If they throw an error then it's not working.


On Tue, Jan 24, 2012 at 11:08 AM, Jaroslav Lukesh <lukesh [at] seznam> wrote:

it works:

<dtml-if "var1=='OK' and var2==3 and var3 in ('a',1,'1') and var4 != 'OK'
and var5">

note1: var5 is string, true when <>'' nor None but must exists

note2: var5 is int, true when <>0 nor None but must exists

<dtml-else>
</dtml-if>

_______________________________________________
Zope maillist - Zope [at] zope
https://mail.zope.org/mailman/listinfo/zope
** No cross posts or HTML encoding! **
(Related lists -
https://mail.zope.org/mailman/listinfo/zope-announce
https://mail.zope.org/mailman/listinfo/zope-dev )


justin.dunsworth at gmail

Jan 24, 2012, 10:14 AM

Post #5 of 5 (514 views)
Permalink
Re: Checking multiple variables existence [In reply to]

Thanks for the response.

I could do that but it isn't really getting rid of the original problem.
Using my original example I'd be turning this:
<dtml-if var1>
<dtml-if var2>
<dtml-if var3>
<dtml-else>
</dtml-if>
<dtml-else>
</dtml-if>
<dtml-else>
</dtml-if>

into:

<dtml-unless var1>
<dtml-call "REQUEST.set('var1','')">
</dtml-unless>
<dtml-unless var2>
<dtml-call "REQUEST.set('var2','')">
</dtml-unless>
<dtml-unless var3>
<dtml-call "REQUEST.set('var3','')">
</dtml-unless>

<dtml-if "var1!='' and var2!='' and var3!=''">
<dtml-else>
</dtml-if>

Thereby increasing the lines of code used, albeit in an initially
"prettier" format when it gets down to the checking of said variables.

I figured if there was an answer for my problem then it'd be an easier
method that I just overlooked. If not then I'll just go with it.

On Tue, Jan 24, 2012 at 11:43 AM, Jaroslav Lukesh <lukesh [at] seznam> wrote:

> Yes, use like that
>
> <dtml-unless var1>
> <dtml-call "REQUEST.set('var1','')">
> </dtml-unless>
>
>
>
> ----- Puvodní zpráva ----- Od: Justin Dunsworth
>
> These are required to be set, though.. right?
>
>
> Doing:
> <dtml-call "REQUEST.set('var_one','OK')">
> <dtml-call "REQUEST.set('var_two','OK')">
>
>
> <dtml-if "var_one=='OK' and var_two=='OK'"> Set
> <dtml-else> Not Set
> </dtml-if>
>
>
> works but taking away var_two and I get a NameError: name 'var_two' is not
> defined. This is what I'm trying to check is if they exist. Not
> particularly looking to match them to anything just yet but rather just to
> see if they exist. If they throw an error then it's not working.
>
>
> On Tue, Jan 24, 2012 at 11:08 AM, Jaroslav Lukesh <lukesh [at] seznam>
> wrote:
>
> it works:
>
> <dtml-if "var1=='OK' and var2==3 and var3 in ('a',1,'1') and var4 != 'OK'
> and var5">
>
> note1: var5 is string, true when <>'' nor None but must exists
>
> note2: var5 is int, true when <>0 nor None but must exists
>
> <dtml-else>
> </dtml-if>
>
>

Zope users RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.