小编fra*_*osy的帖子

Django-结合DetailView和ListView

我是Django的新手,我想构建一个Web应用程序,向您显示事件列表。您可以有几个不同的列表(例如体育赛事,生日...)。我制作了两个模型-日历(事件列表)和事件。

在我的页面上,我有导航菜单,您可以在其中看到“日历”列表。当您单击一个日历时,您可以看到该日历的事件列表,但我也想在侧栏中保留一个日历列表。

据我了解,Django我需要两个视图-ListView(用于边栏日历)和DetailView(用于每个日历中的事件)。

这是我的看法:

class DetailView(generic.DetailView):
    model = Calendar
    template_name = 'koledarji/detail.html'

class CalendarsView(generic.ListView):
    template_name = 'koledarji/calendars.html'
    context_object_name = 'calendars_list'
    def get_queryset(self):
        return Calendar.objects.all()
Run Code Online (Sandbox Code Playgroud)

通过这种方法,我可以在每个特定的日历上使用详细信息,但是我在侧边栏导航菜单上丢失了日历列表。

我的特定日历网址:

url(r'^(?P<pk>[0-9]+)$', views.DetailView.as_view(), name='detail'),
Run Code Online (Sandbox Code Playgroud)

和我的模板的一部分:

{% extends 'prijavljen/calendar.html' %}

{% block cal_name %}

    {% for calendar in calendars_list %}
        {% if request.path == '/prijavljen/'|add:calendar.id %}
            {{calendar.name }}
        {% endif %}
    {% endfor %}
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

在该代码之后,我想列出一个事件列表,但是例如,即使日历名称也足以解决。

我试图通过将request.path与我想要的路径od日历进行比较来解决此问题,但也无法正常工作。

任何帮助,将不胜感激。

python django django-views

4
推荐指数
2
解决办法
1857
查看次数

WPF MVVM:EventTrigger 在 CheckBox 内不起作用

我正在用 MVVM 风格的 WPF 构建一个应用程序。DataGrid当我选中或取消选中多个用于过滤的复选框时,我试图对我的过滤器进行过滤。

我已经找到了解决方案Interaction.Triggers,但在这种情况下它对我不起作用。

这是我的代码:

<ListBox 
            ItemsSource="{Binding PortsFilterSource}"
            Background="LightGray"
            BorderThickness="0"
            Grid.Column="1">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <CheckBox 
                        Content="{Binding Name}"
                        IsChecked="{Binding IsChecked}">

                        <i:Interaction.Triggers>
                            <i:EventTrigger EventName="Unchecked">
                                <i:InvokeCommandAction Command="{Binding FilterCommand}"/>
                            </i:EventTrigger>
                            <i:EventTrigger EventName="Checked">
                                <i:InvokeCommandAction Command="{Binding FilterCommand}"/>
                            </i:EventTrigger>
                        </i:Interaction.Triggers>
                    </CheckBox>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
Run Code Online (Sandbox Code Playgroud)

一切都很好,除了FilterCommand。我的 C# 代码中有这样的内容:

public DelegateCommand<object> FilterCommand { get; set; }
...
FilterCommand = new DelegateCommand<object>(Filter);
Run Code Online (Sandbox Code Playgroud)

Filter(object obj)是一个函数,但当我选中或取消选中任何复选框时,不会输入它。

任何帮助将不胜感激。

c# wpf checkbox eventtrigger mvvm

0
推荐指数
1
解决办法
2980
查看次数

标签 统计

c# ×1

checkbox ×1

django ×1

django-views ×1

eventtrigger ×1

mvvm ×1

python ×1

wpf ×1