BEAUTIFUL! It's printing the HTML as a string, though, but that I can
putz around with, at least I have output!

Thank you *so* much, Brett!!


On Tue, Oct 11, 2011 at 12:49 PM, Brett Epps <brett.e...@quest.com> wrote:
> The reason for that output is that page is a list, not a single object.
> If you want a specific page, use Page.objects.get instead of
> Page.objects.filter.
>
> Brett
>
>
> On 10/11/11 11:30 AM, "Laura C." <code...@gmail.com> wrote:
>
>>that at least gave me an output, but the output is: [<Page: test2>]
>>
>>I have a potential to need 3 attributes from each object in each
>>template, so the mapping may not be what I need. If I pass in a
>>context object, I thought that I should have handles for
>>object.attribute ?  Or maybe I need to map the dict before passing it?
>>
>>
>>
>>On Tue, Oct 11, 2011 at 11:57 AM, Brett Epps <brett.e...@quest.com> wrote:
>>>
>>> Try it with {'page': page} as your extra_context. The keys in a context
>>> dict should always be strings.
>>>
>>> Brett
>>>
>>>
>>> On 10/11/11 8:29 AM, "xenses" <code...@gmail.com> wrote:
>>>
>>> >I thank you for your help and apologize for my naivete, however I
>>> >still am not seeing that tag populate in the template. Here is my view
>>> >function in its entirety:
>>> >
>>> > def test(request, testn):
>>> >    try:
>>> >        testn = str(testn)
>>> >        page = Page.objects.filter(name = "test%s" % testn)
>>> >        return direct_to_template(request, template="test%s.html" %
>>> >testn, extra_context={page:page})
>>> >    except ValueError:
>>> >        raise Http404()
>>> >
>>> >I am using {page:page} because anything else returns errors in debug
>>> >mode.
>>> >in my template I have :
>>> >
>>> >{{ page.leaderboard }}
>>> >
>>> >the page object looks like this:
>>> >
>>> >class Page(models.Model):
>>> >    name = models.CharField(max_length=25, verbose_name='Page Name')
>>> >    leaderboard = models.TextField(max_length=500, null=True,
>>> >blank=True, verbo\
>>> >se_name='Leaderboard Tag')
>>> >    rectangle = models.TextField(max_length=500, null=True,
>>> >blank=True, verbose\
>>> >_name='300x250 Tag')
>>> >    rectangle2 = models.TextField(max_length=500, null=True,
>>> >blank=True, verbos\
>>> >e_name='Additional 300x250')
>>> >
>>> >    def __unicode__(self):
>>> >        return self.name
>>> >
>>> >I know that once I figure this out, I'm going to feel rather daft and
>>> >I appreciate all the help you've given me! Thanks so much!
>>> >
>>> >
>>> >On Oct 10, 2:56 pm, Brett Epps <brett.e...@quest.com> wrote:
>>> >> The direct_to_template() function can take an extra_context keyword
>>> >> argument (a dict). So:
>>> >>
>>> >> direct_to_template(request, template='blah.html',
>>>extra_context={'foo':
>>> >> bar})
>>> >>
>>> >> Would let you use {{ foo }} in a template to output the value of the
>>> >> variable bar.
>>> >>
>>> >> By the way, as a replacement for direct_to_template, there's
>>> >> django.shortcuts.render [1], which is a little more concise.
>>>(Usually,
>>> >> you use direct_to_template in urls.py, since it is a full-fledged
>>> >>generic
>>> >> view function.)
>>> >>
>>> >>
>>>
>>>>>1.https://docs.djangoproject.com/en/dev/topics/http/shortcuts/#django.s
>>>>>..
>>> >>.
>>> >> ts.render
>>> >>
>>> >> Hope that helps,
>>> >>
>>> >> Brett
>>> >>
>>> >> On 10/10/11 12:21 PM, "xenses" <code...@gmail.com> wrote:
>>> >>
>>> >>
>>> >>
>>> >>
>>> >>
>>> >>
>>> >>
>>> >> >That is exactly what I want to do, I can't seem to understand
>>>exactly
>>> >> >how to implement that and have it populate in the template. Do I
>>>just
>>> >> >define the variable in the views and then in the template use
>>> >> >{{ variable_name }} where I need it? Because I tried that first and
>>>it
>>> >> >didn't work. So, maybe I'm just not sure what it is I'm doing
>>> >> >exactly ;)
>>> >>
>>> >> >Thanks for any help!
>>> >>
>>> >> >On Oct 10, 1:09 pm, Brett Epps <brett.e...@quest.com> wrote:
>>> >> >> I may be misunderstanding your question, but it sounds like you
>>>need
>>> >>to
>>> >> >> use Page.objects.get or Page.objects.filter (in your view
>>>function)
>>> >>to
>>> >> >> look up the particular objects that you want to send to the
>>>template.
>>> >>
>>> >> >> Brett
>>> >>
>>> >> >> On 10/10/11 9:53 AM, "xenses" <code...@gmail.com> wrote:
>>> >>
>>> >> >> >This may seem like a very simple question and I have just missed
>>>the
>>> >> >> >answer in the piles of documentation and tutorials that I've read
>>> >>over
>>> >> >> >the past two days. I'm new to Django and trying to implement an
>>> >> >> >internal site at work, and I'm the only Python/Django person we
>>> >>have,
>>> >> >> >so this is all on me.
>>> >>
>>> >> >> >What I am doing is this: I have a set of .html files, templates,
>>> >>which
>>> >> >> >are named testn.html (i.e. test1.html, test2.html, etc) Each
>>> >>template
>>> >> >> >extends base.html, but they each have at least 2 divs that I
>>>need to
>>> >> >> >populate with HTML that is entered in the admin interface and
>>>stored
>>> >> >> >in the Page model. What I need to do is this:
>>> >>
>>> >> >> >from the url parse what test is being requested:
>>> >>
>>> >> >> >url(r'^test(\d{1})/$', test),
>>> >>
>>> >> >> >cal the test view:
>>> >>
>>> >> >> >def test(request, testn):
>>> >> >> >    try:
>>> >> >> >        testn = str(testn)
>>> >> >> >        return direct_to_template(request,
>>>template="test%s.html" %
>>> >> >> >testn)
>>> >> >> >    except ValueError:
>>> >> >> >        raise Http404()
>>> >>
>>> >> >> >And then return the template, but with the correct object
>>>attached
>>> >>to
>>> >> >> >it, filtered by name.  I can't find a way to do this, all that I
>>>can
>>> >> >> >find are ways that make me grab all the objects (and where do I
>>>do
>>> >> >> >this? In models.py or views.py? There are conflicting thoughts on
>>> >> >> >this). I really just need to grab the one object, and if it has
>>>the
>>> >> >> >fields I need, to populate the template with them. Is there an
>>>easy
>>> >> >> >way to do this that won't require me to loop over all objects?
>>> >>
>>> >> >> >Thank you so much for any help or insight!
>>> >> >> >--Laura C.
>>> >>
>>> >> >> >--
>>> >> >> >You received this message because you are subscribed to the
>>>Google
>>> >> >>Groups
>>> >> >> >"Django users" group.
>>> >> >> >To post to this group, send email to
>>>django-users@googlegroups.com.
>>> >> >> >To unsubscribe from this group, send email to
>>> >> >> >django-users+unsubscr...@googlegroups.com.
>>> >> >> >For more options, visit this group at
>>> >> >> >http://groups.google.com/group/django-users?hl=en.
>>> >>
>>> >> >--
>>> >> >You received this message because you are subscribed to the Google
>>> >>Groups
>>> >> >"Django users" group.
>>> >> >To post to this group, send email to django-users@googlegroups.com.
>>> >> >To unsubscribe from this group, send email to
>>> >> >django-users+unsubscr...@googlegroups.com.
>>> >> >For more options, visit this group at
>>> >> >http://groups.google.com/group/django-users?hl=en.
>>> >
>>> >--
>>> >You received this message because you are subscribed to the Google
>>>Groups
>>> >"Django users" group.
>>> >To post to this group, send email to django-users@googlegroups.com.
>>> >To unsubscribe from this group, send email to
>>> >django-users+unsubscr...@googlegroups.com.
>>> >For more options, visit this group at
>>> >http://groups.google.com/group/django-users?hl=en.
>>> >
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>>Groups "Django users" group.
>>> To post to this group, send email to django-users@googlegroups.com.
>>> To unsubscribe from this group, send email to
>>>django-users+unsubscr...@googlegroups.com.
>>> For more options, visit this group at
>>>http://groups.google.com/group/django-users?hl=en.
>>>
>>
>>
>>
>>--
>>--lc
>>"Great spirits have always encountered violent opposition from mediocre
>>minds."
>>-- Albert Einstein (1879-1955)
>>
>>--
>>You received this message because you are subscribed to the Google Groups
>>"Django users" group.
>>To post to this group, send email to django-users@googlegroups.com.
>>To unsubscribe from this group, send email to
>>django-users+unsubscr...@googlegroups.com.
>>For more options, visit this group at
>>http://groups.google.com/group/django-users?hl=en.
>>
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Django users" group.
> To post to this group, send email to django-users@googlegroups.com.
> To unsubscribe from this group, send email to 
> django-users+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/django-users?hl=en.
>
>



-- 
--lc
"Great spirits have always encountered violent opposition from mediocre minds."
-- Albert Einstein (1879-1955)

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to