小编Aka*_*007的帖子

如何获取具有唯一属性的对象列表

背景

我有一个list.这list有很多对象.每个对象都有一个id.现在这些对象有不同的类型.

objects = [Aobject, Bobject, Cobject]
Run Code Online (Sandbox Code Playgroud)

哪里

>>> Aobject != Bobject
True
>>> Aobject.id ==  Bobject.id
True
Run Code Online (Sandbox Code Playgroud)

问题

我想要一个list基于的独特对象object.id.

像这样的东西:

set(objects, key=operator.attrgetter('id'))
Run Code Online (Sandbox Code Playgroud)

(这不起作用.但我想要这样的东西)

python list set

18
推荐指数
3
解决办法
7047
查看次数

如何模拟类的方法返回值

我想嘲笑

os.stat(self.tmp_file).st_size

def original_func():
     print (os.stat("test.txt").st_size==35)
Run Code Online (Sandbox Code Playgroud)

我试过这个

@mock.patch("os.stat")
def test(os_stat):
    stat = mock.Mock()
    stat.st_size.return_value = 35
    os_stat.return_value = stat
    original_func()
Run Code Online (Sandbox Code Playgroud)

这是行不通的。打印语句应该是真的,但事实并非如此。如果您需要更多信息,请发表评论。

python mocking

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

nosql数据库是否适合在线资金交易管理

我打算使用nosql Database作为我的Web产品的后端.我有一些非常基本的疑虑.

1)我在博客中读到,Nosql数据库不太适合在线货币交易,即数据完整性最重要.(我的产品有在线货币交易)

2)每天大约有1000个用户.

3)可用性是否有问题?

能否请说明与Nosql数据库相关的任何利弊.我打算使用MongoDb.这可以满足我上面的查询.

我的问题是清楚的还是我需要提供更多信息?请评论,我将进行必要的更改.

nosql

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

使用South,Django和Git时,处理数据库迁移的正确方法是什么?

背景 :-

我正在使用Django 1.3.我们使用South作为数据库迁移和Git SCM的模块.

问题:-

处理迁移的正确方法是什么形成的文件夹?

主要问题是我在开发机器中对数​​据库模式进行了更改,当我将其上传到生产服务器时,我必须迁移现有模式.虽然这样做,但迁移文件总是存在一些问题.

我应该只将迁移文件夹添加到gitignore吗?或者有更好的方法去做吗?

git django database-migration django-models django-south

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

如何使用字符串[django]访问python模块变量

我有一个django应用程序,带有一个名为"app"的
模块现在这个模块有一个名为"urls.py"的文件,它有一个名为"HOME_URL " 的变量

我想做什么?

app_label = "app"
url = __import__(app_label).urls.HOME_URL
print url
Run Code Online (Sandbox Code Playgroud)

这显然不起作用,但我希望你得到我正在尝试做的事情,如果没有请评论我将编辑问题以包含更多信息.

python django python-module

9
推荐指数
2
解决办法
3566
查看次数

如何迁移django自定义base64字段.字段不存在

我有一个从django片段复制的base64字段.

https://djangosnippets.org/snippets/1669/

class Base64Field(models.TextField):
    """
    https://djangosnippets.org/snippets/1669/
    Example use:
    class Foo(models.Model):
        data = Base64Field()

    foo = Foo()
    foo.data = 'Hello world!'
    print foo.data # will 'Hello world!'
    print foo.data_base64 # will print 'SGVsbG8gd29ybGQh\n'

    """

    def contribute_to_class(self, cls, name):

        if not self.db_column:
            self.db_column = name

        self.field_name =name+ '_base64'
        super(Base64Field, self).contribute_to_class(cls, self.field_name)
        setattr(cls, name, property(self.get_data, self.set_data))

    def get_data(self, obj):
        return base64.decodestring(getattr(obj, self.field_name))

    def set_data(self, obj, data):
        setattr(obj, self.field_name, base64.encodestring(data))

    def deconstruct(self):
        ame, path, args, kwargs = super(Base64Field, self).deconstruct()
        from pprint import pprint
        pprint(vars(self)) …
Run Code Online (Sandbox Code Playgroud)

django django-migrations

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

如何通过URL传递带空格的变量:Django

我通过url传递带有空格的变量时遇到了麻烦.现在假设我有一个对象

class Kiosks(models.Model):
    name = models.CharField(max_length = 200, unique = True)
    owner = models.ForeignKey(User)
Run Code Online (Sandbox Code Playgroud)

现在为信息亭输入的"名称"是"Akash Deshpande"并保存.现在,当重定向到视图中的新页面时,我正在使用"kiosk名称"即

 messages.success(request,"Kiosk edited successfully") 
 return HttpResponseRedirect('/kiosks/'+kiosk.name+'/')
Run Code Online (Sandbox Code Playgroud)

迎合这个网址的观点如下:

def dashboard(request, kiosk_name):
    kiosk =Kiosks.objects.get(name__iexact = kiosk_name)
    deal_form = DealsForm(kiosk=kiosk)
    code_form = CodeForm()
    unverified_transactions = get_unverified_transactions(kiosk)
    return render(request,'kiosks/dashboard.html',{'kiosk':kiosk, 
                                                   'deal_form' : deal_form,
                                                   'code_form' : code_form,
                                                   'unverified_transactions' : unverified_transactions})
Run Code Online (Sandbox Code Playgroud)

主要的urls.py只是通过"信息亭"指示所有内容,以显示urls kiosks urls.py

urlpatterns = patterns('kiosks.views',url(r'^(\w+)/$', 'dashboard'),)
Run Code Online (Sandbox Code Playgroud)

现在,它没有转到此页面,而是发出错误"找不到页面".如何传递其中有空格的变量?问题清楚了吗?任何帮助将受到高度赞赏.

python django django-urls

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

Facebook喜欢并分享ajax上的按钮

背景: - 使用ajax获取一个名为"foo_posts"的实体.在这篇文章我使用Facebook分享和喜欢按钮

{% for post in foo_posts %}
    <div class="foo">
        {{ post }}
        <div class="fb-like" data-send="true" data-width="450" data-href="http://foo/foo/detail/{{ foo.id }}/" data-show-faces="true"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

{%endfor%}现在使用Ajax填充这些帖子.

问题: - Facebook喜欢和分享被初始化

$(function(d, s, id) {
              var js, fjs = d.getElementsByTagName(s)[0];
              if (d.getElementById(id)) return;
              js = d.createElement(s); js.id = id;
              js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1&appId=245185848840630";
              fjs.parentNode.insertBefore(js, fjs);
        }(document, 'script', 'facebook-jssdk'));
Run Code Online (Sandbox Code Playgroud)

这不起作用.如何调用此函数,以便正确填充like和share?应该在ajax成功函数中调用它.(现在正在页面上调用它)

PS: - 我在成功函数中试过了.我想这样做错了.

ajax jquery facebook django-templates

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

Django 删除导致完整性错误(models.set_null)

我有2个模型

class Foo(models.Model):
     field1 = models.Charfield()
     .... 
     ....

class Foo1(models.Model):
    field1 = models.ForeignKey(Foo, null=True, blank=True, on_delete=models.SET_NULL)
    ...
    ...
Run Code Online (Sandbox Code Playgroud)

当我尝试删除 Foo 对象时,会导致完整性错误。

"'Cannot delete or update a parent row: a foreign key constraint fails"
Run Code Online (Sandbox Code Playgroud)

我正在使用 mysql 后端和 Django 1.7(我知道这是旧的,我正在尝试将其升级到 LTS 版本。)

编辑:如果您需要更多信息,请发表评论。我会在这里更新。

Foo.objects.get(id=foo_id).delete() 
Run Code Online (Sandbox Code Playgroud)

这不起作用。导致上述错误。我刚刚确认mysql引擎是Innodb。

mysql django

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

如何将facebook喜欢wordpress从一个域移动到另一个域

背景

我有一个域名www.foo.com.我在那里主持我的wordpress博客.在我提出的帖子上有很多facebook喜欢.现在我已经将www.foo.com重定向到www.boo.com并关闭了foo.com域.(在服务器上我只是将文件从foo.com复制到boo.com的文件夹.两者的数据库是相同的.)

问题

我面临的问题是,Facebook喜欢的是"走了".我如何检索Facebook喜欢?这些喜欢链接到域名吗?

wordpress facebook wordpress-plugin facebook-like

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

Django:如何检索创建的最新对象

我想检索为特定用户创建的最新对象.

假设我有一个模型:

class LogBookPreTransaction(models.Model):
    person = models.ForeignKey(User)
    code = models.CharField(max_length=20)
    address = models.CharField(max_length=200,null =True)
    pincode = models.CharField(max_length=20,null =True)
Run Code Online (Sandbox Code Playgroud)

现在我想检索为user ="X"创建的最新对象.我们怎么做?

transaction_obj = LogBookPreTransaction.objects.filter(user = "x").latest()

当然这不起作用,但我想要这样的东西.问题清楚了吗?

django django-models

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