小编Use*_*ser的帖子

Sqlalchemyscoped_session(..)和scoped_session(..)()之间的区别

显式使用有什么区别scoped_session

engine = create_engine(url)
session = scoped_session(sessionmaker(bind=engine))

session.add(..)
session.commit()
session.remove()

session.add(..)
session.commit()
session.remove()
Run Code Online (Sandbox Code Playgroud)

并创建scoped_session对象实例:

engine = create_engine(url)
session = scoped_session(sessionmaker(bind=engine))

session().add(..)
session().commit()
session.remove()

session().add(..)
session().commit()
session.remove()
Run Code Online (Sandbox Code Playgroud)

Sqlachemy 始终通过调用以下命令为同一线程返回相同的会话session()

>> session() is session() 
True
>> session is session() 
False
Run Code Online (Sandbox Code Playgroud)

这是在多线程环境中操作连接的正确方法吗?如果是这样,为什么 sqlalchemy 允许使用session而不是查询session()

sqlalchemy

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

Django JSONField并使用ILIKE搜索字典列表

是否可以使用ILIKE(icontains)运算符搜索字典列表中的一个键值?我的json字段看起来像这样:

object = MyModel()
object.json_data = [
    {
        "type": 1,
        "results": [
            {
                "score": 1,
                "comment": "Some text comment 1",
            },
            {
                "score": 2,
                "comment": "Some text comment 2",
            },
            {
                "score": 3,
                "comment": "Some text comment 3",
            }
        ]
    },
    {
        "type": 2,
        "results": [
            {
                "score": 4,
                "comment": "Some text comment 4",
            },
            {
                "score": 5,
                "comment": "Some text comment 5",
            },
            {
                "score": 6,
                "comment": "Some text comment 6",
            }
        ]
    }
]
object.save()
Run Code Online (Sandbox Code Playgroud)

现在,如何编写查询以在"注释"键中搜索?

MyModel.objects.filter(json_data__??__results__??__comment__icontains="text comment") …
Run Code Online (Sandbox Code Playgroud)

django

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

发送电子邮件后,如何从服务器获取响应?

我想从服务器状态(例如200,500)的服务器获得响应,该消息说明是否已发送消息.怎么做?

>> s = smtplib.SMTP('...')
>> resp = s.sendmail('me@me.com', 'exist@email.com', 'message')
>> print resp
{}
>> resp = s.sendmail('me@me.com', 'does-not-exist-email@email.com', 'message')
>> print resp
{}
>> resp = s.sendmail('me@me.com', 'does-not-exist-domain@email000.com', 'message')
>> print resp
{}
Run Code Online (Sandbox Code Playgroud)

O_O

谢谢.

python email dsn

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

查看控制器未被释放

我有2个控制器InitViewController和SettingsViewController.每个视图都有一个调用另一个视图的按钮:

InitViewController

@interface InitViewController : UIViewController
    - (IBAction)loadSettings:(id)sender;
@end

@implementation InitViewController
    - (IBAction)loadSettings:(id)sender {
        SettingsViewController *vc = [[SettingsViewController alloc] initWithNibName:@"SettingsViewController" bundle:nil];
        [self presentViewController:vc animated:YES completion:nil];
        vc = nil;
    }
@end
Run Code Online (Sandbox Code Playgroud)

SettingsViewController

@interface SettingsViewController : UIViewController
    - (IBAction)back:(id)sender;
@end

@implementation SettingsViewController
    - (IBAction)back:(id)sender {
        InitViewController *vc = [[InitViewController alloc] initWithNibName:@"InitViewController" bundle:nil];
        [self presentViewController:vc animated:YES completion:nil];
        vc = nil;
    }
@end
Run Code Online (Sandbox Code Playgroud)

虽然我通过多次点击按钮来分析应用程序并测试它,但我看到InitViewController和SettingsViewController的实例仍然存在=> PRINTSCREEN

我究竟做错了什么?

view ios

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

为什么Django ORM在删除对象之前进行选择查询?

我有两个简单的模型:

class Image(Model):
    photo = models.CharField()

class Box(Model):
    name = models.CharField()
    image = models.ForeignKey(Image, blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

当我想删除Image的对象时,Django在Box模型上进行选择查询:

>> Image.objects.all()[0].delete()

>> print len(connection.queries)

2

>> connection.queries

{u'time': u'0.000', u'sql': u'QUERY = u\'SELECT "box"."id", ... FROM "box" WHERE "image"."image_id" IN (%s)\' - PARAMS = (1,)'}
{u'time': u'0.000', u'sql': u'QUERY = u\'DELETE FROM "image" WHERE "id" IN (%s)\' - PARAMS = (1,)'}
Run Code Online (Sandbox Code Playgroud)

Django 1.6b2

我试过on_delete=models.SET_NULL,也与sqlite和PostgreSQL总是相同的结果.

django orm

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

Django REST Framework:在一个事务中保存/更新/删除相关对象。如何?

我想问你,如何使用 DRF 处理添加/编辑/删除具有许多内联对象(如在 Django Admin + FormSet 中)的对象。例如:

Publication:
  - title
  - description
  + Notofications (1 and more)
    - first_name
    - email
  + Images (1 and more)
    - title
    - url
  + Attributes (1 and more)
    - name
    - value
Run Code Online (Sandbox Code Playgroud)

JSON 输入:

{
     "title": "..", 
     "description": "..", 
     "notifications": [{"first_name": "", "email": ""}, ...]
     "images": [{"title": "", "url": ""}, ...]
     "attributes": [{"name": "", "value": ""}, ...]
}
Run Code Online (Sandbox Code Playgroud)

所以我认为“添加”这样的结构很简单,但是“更新”(或“修补”)和“删除”(例如其中一张图像)怎么样?整个请求应该在事务中完成,例如:如果我们对出版物的标题和图片的网址进行了一些编辑,并且网址格式错误,我们不应该保存出版物对象和图片对象。

REST API 中是否有好的模式?

谢谢你。

python django django-rest-framework

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

如何授予我的 youtube-api 应用程序对许多 Youtube 帐户的只读访问权限?

我正在开发生成有关 youtubers 频道​​的报告和统计信息的应用程序。我在 Google 文档中找不到,Youtube 用户如何从我的应用程序向他的 Youtube 帐户授予只读访问权限?(我的意思是像 facebook 应用程序)。

我有点困惑 Google API 中有多少种身份验证方式以及我应该使用哪种方式。

google-api google-oauth youtube-data-api

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