小编svf*_*fat的帖子

如何提取数字(以及比较形容词或范围)

我正在研究Python中的两个NLP项目,它们都有类似的任务来从以下句子中提取值和比较运算符:

"... greater than $10 ... ",
"... weight not more than 200lbs ...",
"... height in 5-7 feets ...",
"... faster than 30 seconds ... "
Run Code Online (Sandbox Code Playgroud)

我看到了两种不同的方法来解决这个问题,一种使用非常复杂的正则表达式,另一种使用NER(以及一些正则表达式).

如何解析这些句子中的值?我认为这是NLP中的常见任务.


期望的输出将是这样的:

输入:

"超过10美元"

输出:

{'value': 10, 'unit': 'dollar', 'relation': 'gt', 'position': 3}
Run Code Online (Sandbox Code Playgroud)

python nlp nltk spacy

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

如何使用ToManyField加速tastypie的查询

在resources.py我有:

class CategoryResource(ModelResource):
    items = fields.ToManyField('ItemResource', 'items', full=True, null=False, readonly=True, related_name='items')
    class Meta:
        queryset = Category.objects.all().order_by('id')
        include_resource_uri = False
        always_return_data = True
        resource_name = 'category'
Run Code Online (Sandbox Code Playgroud)

6类中约有5000种.当我制作'list'api请求即'api/1.0/category'时,它会对数据库进行大约5000次查询.我该如何优化它?我知道full = False,但它不适合我的需要.

UPD: 我发现了导致如此多查询的原因.我在ItemResource中有'类别'关系,因此tastypie为每个项生成一个选择查询.

class ItemResource(ModelResource):
    categories = fields.ToManyField(CategoryResource, 'categories', null=True, readonly=True)

    def dehydrate_categories(self, bundle):
        categories = Category.objects.filter(owner_id=bundle.request.user.id, items__item=bundle.obj)
        return [category.name for category in categories]
Run Code Online (Sandbox Code Playgroud)

当我请求CategoryResource时,显然这是不必要的数据,有没有办法将它从查询中排除?

django optimization tastypie

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

Gulp-inject变换不起作用

我试图设置gulp-inject来将依赖项注入index.html.除了转换功能外,一切正常.我需要以下列方式替换部分文件路径:/frontend/src/- > /static/我尝试这样做(从某处复制粘贴):

transform : function ( filePath, file, i, length ) {
                var newPath = filePath.replace('/frontend/src', '');
                console.log('inject script = '+ newPath);
                return '<script src="/static/' + newPath  + '"></script>';
            }
Run Code Online (Sandbox Code Playgroud)

执行后,我在控制台中没有任何内容(标准gulp输出除外),并且未转换的文件路径出现在结果文件中.看起来我的自定义转换不会运行,而默认转换工作正常.

javascript gulp gulp-inject

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

AngularJS:如何在手机上打开原生视频播放器

我正在使用vjs-video AngularJS插件在我的应用中呈现视频.在桌面上,它在ngDialog中显示它们(通过绑定对话框窗口到ng-click of gallery元素)

它工作正常,但在手机上我想在用户点击(点击)图库项目后立即显示原生全屏播放器.我知道如何在Angular应用程序中检测移动和桌面,但下一步该怎么做?现在用户必须点击图库项目然后对话框显示,之后用户应该在对话框中第二次点击video.js播放器然后视频开始在本机播放器中播放,但我想在第一次点击后立即打开本机播放器.

video mobile angularjs video.js

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

Django M2MFields'通过'小部件

是否存在Django小部件的任何示例,这些小部件对具有"通过"属性的ManyToManyFields有用吗?例如,我有这些模型(从django文档获取源代码):

    from django.db import models

    class Person(models.Model):
        name = models.CharField(max_length=128)

        def __str__(self):              # __unicode__ on Python 2
            return self.name

    class Group(models.Model):
        name = models.CharField(max_length=128)
        members = models.ManyToManyField(Person, through='Membership')

        def __str__(self):              # __unicode__ on Python 2
            return self.name

    class Membership(models.Model):
        person = models.ForeignKey(Person, on_delete=models.CASCADE)
        group = models.ForeignKey(Group, on_delete=models.CASCADE)
        date_joined = models.DateField()
        invite_reason = models.CharField(max_length=64)
Run Code Online (Sandbox Code Playgroud)

很明显,标准的ModelMultipleChoiceField在这里不起作用.我需要在添加时填充'date_joined'和'invite_reason'.实现这一目标的最简单方法是什么?

python django django-forms django-widget

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

你如何在"独奏开发"中使用git(没有团队)?

我是小型项目的自由职业者,所有这些都是我独自完成的,没有团队.

我试着使用Git Flow.起初,一切都很好.有功能分支,有意义描述的小提交,合并.

但是这个过程总是以非常大的提交结束,直接到主分支,描述如"大更新","一些更新".

你如何解决?在我的情况下我是否需要Git Flow?

git workflow development-environment git-flow

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

Django的.视图中的success_url或模型中的get_absolute_url().如何正确使用它们?

在由BaseUpdateView使用的ModelFormMixin中,方法get_success_url()url = self.object.get_absolute_url() ,我们不需要success_url = reverse_lazy('blablabla')在视图中写入,而只需get_absolute_url()在模型中确定方法.但DeletionMixin,这是通过使用BaseDeleteView,不这样做,它需要success_url.

为什么?为什么不使这些方法相同?我不得不覆盖get_success_url我的DeleteView,所以它get_absolute_url()现在正在使用,我想要的.

或者我success_url在视图中没有正常工作?基本上,我需要的是反转ForeignKey可访问的模型的URL ,我现在这样做:

model Child (models.Model):
    parent = models.ForeignKey (Parent)
    def get_absolute_url (self):
        return reverse ('parent-detail', kwargs = {'pk': str (self.parent.pk)})
Run Code Online (Sandbox Code Playgroud)

如何做到这一点success_url?我不能self.parent.pk在视图中写

python django django-models django-views

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

Django postgres 反向相关模型中的全文搜索

我在 Django 项目中使用https://docs.djangoproject.com/en/1.10/ref/contrib/postgres/search/ 。如何将反向相关模型添加到搜索向量中?

class Container(models.Model):
    text = models.TextField()

class Item(models.Model):
    container = models.ForeignKey(Container)
    text = models.TextField()
Run Code Online (Sandbox Code Playgroud)

我想在ItemContainer模型text字段中进行搜索,并返回QuerySet模型Container(如果相关Item包含搜索模式)

django postgresql

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