小编mar*_*595的帖子

Django 模型通过空字符串过滤

我有以下观点:

def search_events(request):
    term = request.GET.get('term', '')
    adminDivision = request.GET.get('adminDivision', '')
    events = Event.objects.filter(event_name__icontains=term, city__admin1=adminDivision)
    data= serializers.serialize('json', events);
    return HttpResponse(data, content_type='application/json')
Run Code Online (Sandbox Code Playgroud)

它可以从请求接收 2 个参数,term 和 adminDivision,然后在数据库上进行搜索。

现在的工作方式是,当其中一个为空(term 或 adminDivision)时,我不会得到任何结果,因为所有对象对这些字段都有一些值。

我想要的是,如果一个或什至两个过滤器都为空,则不要应用该过滤器。

例如,如果我有这些对象:

  • [event_name='foo', adminDivision='1']
  • [event_name='bar', adminDivision='2']
  • [event_name='foo bar', adminDivision='3']

目前term=foo(对于 adminDivision 没有价值),我没有得到任何结果,但我希望它返回第一个和第三个。

由于这两个值都是空的,我也没有得到任何结果,但我想拥有所有结果。

有没有一种优雅的方法来实现这一目标?

谢谢你!

python django

5
推荐指数
1
解决办法
1157
查看次数

Angular 2材料和flex-layout对齐

我正在尝试使用角度2材质和flex-layout来创建响应式元素库.几个小时后,我仍然无法将我的元素集中在一起:中心

这是源代码:

<div fxLayout='row' fxLayoutWrap fxLayoutGap="2rem">
  <md-card fxFlex.gt-md="20" fxFlex.md="28"  fxFlex.sm="40" fxFlex.xs="100" *ngFor="let recipe of recipes" [routerLink]="['/details', recipe.id]" class="recipe-card">
    <md-card-header>
      <md-card-title>element</md-card-title>
    </md-card-header>
    <img md-card-image src="http://placehold.it/350x200">
    <md-card-content>
      <p>
        Lorem Ipsum
      </p>
    </md-card-content>
  </md-card>
</div>
Run Code Online (Sandbox Code Playgroud)

我已经为fxFlexAlign(https://github.com/angular/flex-layout/wiki/API-Documentation)尝试了不同的值,但它们都没有实现我所需要的,即将元素置于中心,或者换句话说,分发右侧和左侧之间的红色方块空间.

有没有办法实现这个目标?

编辑

不幸的是,justify-content: space-between;如果我有动态数量的项目,则无效.最终,它们将被包装在一个新行中,然后最后一行中的项目将不会像预期的那样:

.container {
  display:flex;
  width:100%;
  flex-flow:row wrap;
  justify-content: space-between;

  
}
.block {
  width:100px;
  height:100px;
  border:1px solid red;
}
Run Code Online (Sandbox Code Playgroud)
<div class="container">
  <div class="block" fxLayout='row' fxLayoutWrap fxLayoutGap="2rem">
   ... you content
  </div>
  <div class="block" fxLayout='row' fxLayoutWrap fxLayoutGap="2rem">
   ... you content
  </div> …
Run Code Online (Sandbox Code Playgroud)

css flexbox angular-material2 angular

5
推荐指数
1
解决办法
1万
查看次数

打字稿检查对象是否匹配类型

我有以下问题。假设我有一个类型:

type A = {
    prop1: string,
    prop2: {
        prop3: string
    }
}
Run Code Online (Sandbox Code Playgroud)

我从外部服务接收一些 json 对象,我想验证该 json 是否匹配类型A

function isA(obj:any): boolean {
    // What should be here?
}
Run Code Online (Sandbox Code Playgroud)

所以如果我obj是这样的:

{
 prop1: "Hello",
 prop2: {
    prop3: "World"
 }
}
Run Code Online (Sandbox Code Playgroud)

或者

{
     prop1: "Hello",
     prop2: {
        prop3: "World"
     },
     moreProps: "I don't care about"
}
Run Code Online (Sandbox Code Playgroud)

该函数将返回真,但对于类似的东西会返回假

{
     foo: "Hello",
     bar: {
        prop3: "World"
     }
}
Run Code Online (Sandbox Code Playgroud)

实现这一目标的最简单方法是什么?

谢谢。

typescript

5
推荐指数
1
解决办法
4639
查看次数

ng-repeat中的UI Bootstrap单选按钮

我试图使用ui bootstrap(http://angular-ui.github.io/bootstrap/)做一组单选按钮,与他们网站上的示例几乎相同,但是使用ng-repeat:

<div class="btn-group">
    <label ng-repeat='option in options' class="btn btn-danger" ng-model="radioModel2" btn-radio="'{{option}}'" uncheckable>{{option}}</label>
</div>
Run Code Online (Sandbox Code Playgroud)

但由于某些原因,当我使用ng-repeat时它不起作用.谁知道为什么?

我已经做了一个说明问题的人:http ://plnkr.co/edit/0sDgKoRhHOgfnIvBPmi4?p=preview

谢谢!

javascript angularjs angular-ui-bootstrap

3
推荐指数
1
解决办法
3216
查看次数

使用css垂直对齐文本

我试图得到这个:

http://img16.imageshack.us/img16/2198/screenshot20130304at146.png

但是2小时后我就有了这个:

http://imageshack.us/photo/my-images/138/screenshot20130304at152.png

问题是我不知道如何在不使用javascript的情况下对齐按钮上的文本,仅使用css.无论如何没有Javascript可以做到这一点?这是我的代码:

<div class='chart_button'>
    <div>Pain Relief</div>
</div>
<div class='chart_button'>
   <div>Pain relief by attack</div>
</div>
Run Code Online (Sandbox Code Playgroud)

这是css:

.button_set .chart_button{
    display: inline-table;
    height: 50px;
    width: 110px;
    background: url('../img/button-chart.png');
    font-size: 14px;
    font-weight: bold;
    color: #717171;
    text-align: center;
    margin-right: 1px;
    cursor: pointer;
    vertical-align: bottom;
}
Run Code Online (Sandbox Code Playgroud)

html css css3

2
推荐指数
1
解决办法
97
查看次数

Django和S3直接上传

在我的项目中,我已经配置好并且可以正常使用S3 存储。现在,我正在尝试使用s3 direct配置直接上传到s3的功能。工作正常。用户能够上传图像并将其存储在S3中。当我在数据库中保存对图像的引用时,就会出现问题。

models.py

class FullResPicture(Audit):
    docfile = models.ImageField()
    picture = models.OneToOneField(Picture, primary_key=True)
Run Code Online (Sandbox Code Playgroud)

settings.py

...
S3DIRECT_DESTINATIONS = {
    # Allow anybody to upload jpeg's and png's.
    'imgs': ('uploads/imgs', lambda u: u.is_authenticated(), ['image/jpeg', 'image/png'], 'public-read','bucket-name'),
}
...
Run Code Online (Sandbox Code Playgroud)

views.py

#Doc file is the url to the image that the user uploaded directly to S3
#https://s3-eu-west-1.amazonaws.com/bucket/uploads/imgs/picture.jpeg
fullRes = FullResPicture(docfile = form_list[1].cleaned_data['docfile'])
Run Code Online (Sandbox Code Playgroud)

因此,如果我查看数据库,就会发现有些图像可以正常工作(仅使用django-storages上传的那些图像),其docfile值如下所示:

images/2015/08/11/image.jpg
Run Code Online (Sandbox Code Playgroud)

当应用程序尝试访问这些图像时,S3 boto能够正确获取图像。

但是之后,我直接从用户的浏览器上传了图像。对于这些,我存储了完整的URL,因此它们在数据库中看起来像这样:

https://s3-eu-west-1.amazonaws.com/bucket/uploads/imgs/Most-Famous-Felines-034.jpg
Run Code Online (Sandbox Code Playgroud)

当应用程序尝试访问它们时,我遇到了以下异常:

File "/Users/mariopersonal/Documents/dev/venv/pictures/lib/python2.7/site-packages/django/db/models/fields/files.py", line 49, in _get_file
    self._file = self.storage.open(self.name, 'rb')
  File "/Users/mariopersonal/Documents/dev/venv/pictures/lib/python2.7/site-packages/django/core/files/storage.py", …
Run Code Online (Sandbox Code Playgroud)

python django amazon-s3 boto3

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

Angular 2 路由检查参数是否包含有效值

我在一个 angular2 组件中有以下代码:

ngOnInit() {
    this.route.params
      .switchMap((params: Params) => this.elementsService.getElement(+params['id']))
      .subscribe(element => {
                    this.elementToEdit = element;
                }
      );
  }
Run Code Online (Sandbox Code Playgroud)

此组件在两种情况下使用,一种id是在 url 中提供了,另一种是没有id提供。在第一种情况下,它工作正常。在第二个中,它可以工作,但控制台中出现 404 错误:api/elements/NaN.

我正在尝试解决这个问题,但我找不到一种方法来检查idurl 中是否存在:

ngOnInit() {
  if(this.route.params['id']){<---doesn't work
    this.route.params
      .switchMap((params: Params) => this.elementsService.getElement(+params['id']))
      .subscribe(element => {
                    this.elementToEdit = element;
                }
      );
  }
}
Run Code Online (Sandbox Code Playgroud)

如果id参数不存在,有没有办法做到这一点并避免调用服务?

javascript angular2-routing angular

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

&lt;p&gt; 标签内垂直对齐

我有这个 html:

<div id="workAllocated">
    <h3>Work Allocated</h3>
    <p>Lorem Ipsum</p>  
    <p>Lorem Ipsum</p>  
</div>
Run Code Online (Sandbox Code Playgroud)

以及以下 CSS:

div#contentarea.profile_edit div {
    margin-bottom: 20px;
}
div#contentarea.profile_edit div.col_01 h3 {
    font-size: 2.4em;
    margin: 0;
}
div#workAllocated p {
    margin-bottom: 0px;
    border-bottom: 1px solid red;
}
Run Code Online (Sandbox Code Playgroud)

结果看起来像这个快照:

在此处输入图片说明

但我需要它看起来像这样:

在此处输入图片说明

不同之处在于<p>标签内文本的垂直对齐方式。它在<p>容器内左上角对齐,但应该在左中。我尝试了一些 技巧, 例如更改行高并将显示更改为表格单元格,然后应用垂直对齐属性,但它们都没有真正起作用。

提前致谢!

html css

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