小编Car*_*cho的帖子

在数据库中交换唯一的索引列值

我有一个数据库表,其中一个字段(不是主键)有一个唯一的索引.现在我想将此列下的值换成两行.怎么可以这样做?我知道的两个黑客是:

  1. 删除两行并重新插入.
  2. 更新具有其他值的行并交换,然后更新为实际值.

但我不想这样做,因为它们似乎不是解决问题的合适方法.任何人都可以帮我吗?

sql database

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

如何使用Compass + SASS的Foundation 5?

问题

基金会5上周发布,这很好,但新版本要求使用Bower将F5与SASS一起使用,官方文档似乎有点不完整和不成熟.

我正在尝试使用文档提出的步骤创建项目:

[sudo] npm install -g bower
Run Code Online (Sandbox Code Playgroud)

然后

gem install foundation
Run Code Online (Sandbox Code Playgroud)

这里没问题.问题是创建Compass项目时:

foundation new MY_PROJECT
cd MY_PROJECT
compass compile
Run Code Online (Sandbox Code Playgroud)

Compass编译后,我收到以下错误:

directory stylesheets/ 
    error scss/app.scss (Line 1: File to import not found or unreadable: settings.
Load paths:
  /home/cartucho/MY_PROJECT/scss
  /var/lib/gems/1.9.1/gems/compass-0.12.2/frameworks/blueprint/stylesheets
  /var/lib/gems/1.9.1/gems/compass-0.12.2/frameworks/compass/stylesheets
  /home/cartucho/MY_PROJECT/bower_components/foundation/scss
  Compass::SpriteImporter)
   create stylesheets/app.css 
Run Code Online (Sandbox Code Playgroud)

指南针配置文件(config.rb):

# Require any additional compass plugins here.
add_import_path "bower_components/foundation/scss"

# Set this to the root of your project when deployed:
http_path = "/"
css_dir = "stylesheets"
sass_dir = "scss"
images_dir …
Run Code Online (Sandbox Code Playgroud)

zurb-foundation compass-sass

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

如何在没有用户交互的情况下在Windows 10中创建和安装X.509自签名证书?

问题

  • 创建并安装临时证书以在我的开发环境中签署代码.
  • 这必须使用无人参与的 脚本(无需用户交互).

遗留脚本

现在,我有这个脚本使用不推荐使用的工具makecert创建证书:

makecert -r -pe -n "CN=My CA" -ss CA -sr CurrentUser -a sha256 -cy authority -sky signature -sv MyCA.pvk MyCA.cer
certutil -user -addstore Root MyCA.cer
certutil -addstore Root MyCA.cer
makecert -pe -n "CN=My Company" -a sha256 -cy end -sky signature -ic MyCA.cer -iv MyCA.pvk -sv MySPC.pvk MySPC.cer
pvk2pfx.exe -pvk MySPC.pvk -spc MySPC.cer -pfx MySPC.pfx
certutil -f -user -p "" -importPFX MySPC.pfx
Run Code Online (Sandbox Code Playgroud)

上面的脚本创建了2个证书:

  1. MyCA.cer:自签名的根颁发机构证书.
  2. MySPC.cer:签署我的代码的证书(签名MyCA.cer).

此脚本还会打开请求用户密码和用户确认的对话框,以便在受信任的根证书颁发机构存储中安装证书.我需要在没有用户交互的情况下完成此操作. …

powershell unattended-processing x509certificate x509 windows-10

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

在布谷鸟沙箱中添加模块

对于恶意软件动态恶意软件分析,我使用的是自动恶意软件分析 - Cuckoo Sandbox.现在我想添加新的模块来分析恶意软件.我研究过cuckoo sandbox的开发文档.但目前我无法在恶意软件/样本上添加自定义脚本进行静态分析.这里有 Python脚本.

任何人都可以指导我如何在布谷鸟沙箱处理模块中添加更多模块/分析脚本.如果他们是网上的任何文章,请分享.

谢谢

python testing analysis sandbox cuckoo

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

如何从ctype结构构建python字符串?

我正在使用ctypes,我已经定义了这个结构来传递参数

class my_struct(ctypes.Structure):
    _fields_ = [ ("buffer", ctypes.c_char * BUFSIZE),
                 ("size", ctypes.c_int )]
Run Code Online (Sandbox Code Playgroud)

然后我使用以下代码调用C函数,但我不知道如何从我创建的结构创建一个字符串.

class Client():

    def __init__(self):
        self.__proto = my_struct()
        self.client = ctypes.cdll.LoadLibrary(r"I:\bin\client.dll")

    def version(self):
        ret = self.client.execute(ctypes.byref(self.__proto))
        my_string = self.__proto.buffer[:self.__proto.size]
Run Code Online (Sandbox Code Playgroud)

我想使用缓冲区的前n个字节创建一个python字符串(缓冲区包含NULL字符,但我必须处理这种情况,如果需要,创建带有/ 0x00字符的字符串).愤怒

my_string = self.__proto.buffer[:self.__proto.size]
Run Code Online (Sandbox Code Playgroud)

如果出现0x00,则无法截断字符串.欢迎任何想法.提前致谢.

c python string ctypes

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

在 Django Social Auth 管道中收集额外的用户数据

我正在使用 Django Social Auth (v0.7.22) 通过 Facebook 注册用户,并且工作正常。

我的疑问是如何为新用户收集额外数据:

  1. 如何检测新用户?
  2. 在哪里存储收集到的数据(在 Django 会话中或通过管道传递**kwargs)?

我的管道看起来像:

SOCIAL_AUTH_PIPELINE = (
    'social_auth.backends.pipeline.social.social_auth_user',
    'social_auth.backends.pipeline.misc.save_status_to_session',
    ## My customs ...
    'myapp.pipeline.load_data_new_user',
    'myapp.pipeline.handle_new_user',
    'myapp.pipeline.username',
    ##
    'social_auth.backends.pipeline.user.create_user',
    'social_auth.backends.pipeline.social.associate_user',
    'social_auth.backends.pipeline.social.load_extra_data',
    'social_auth.backends.pipeline.user.update_user_details',
)    
Run Code Online (Sandbox Code Playgroud)

第一个自定义函数只是收集 Facebook 个人资料图片:

def load_data_new_user(backend, response, user, *args, **kwargs):
    if user is None:
        if backend.name == "facebook":
            try:
                url = "http://graph.facebook.com/%s/picture?width=200&height=200&redirect=false" % response['id']
                data = json.loads(urllib2.urlopen(url).read())['data']
                return {'avatar': data}
            except StandardError:
                return {'avatar': None}
        else:
            raise ValueError()
Run Code Online (Sandbox Code Playgroud)

我的疑惑:

  1. 我检查,如果userNone用于检测新用户(不知道这是确定的假设)。
  2. 我将头像元数据存储在管道中**kwargs而不是使用会话中,可以吗?我什么时候应该使用会话。 …

django django-socialauth

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

如何(以及何时/何地)初始化 Django 缓存?

我正在尝试使用 DjangoLocMemCache来存储一些简单的值,但我不确定如何在 Django 启动时初始化缓存。Django 1.7 附带Applications,允许在 中运行一些代码AppConfig.ready(),该位置非常适合初始化缓存,但根据 Django 1.7 文档:

“ ...虽然您可以如上所述访问模型类,但请避免在 ready() 实现中与数据库交互。”

所以,假设我想从我的模型中存储一些数据库查询:

x = MyModel.objects.count()
y = MyModel.(a really expensive query)
Run Code Online (Sandbox Code Playgroud)

我应该如何以及何时初始化缓存?是否有推荐的“最佳实践”来做到这一点?目前,我刚刚将以下内容添加cache.py到我的应用程序中,但我不确定我的代码是否命中数据库一次(即第一个请求),然后使用之前的缓存值(以下请求)。

# cache.py

from django.core.cache import caches
from .models import MyModel


class Cache(object):

    def __init__(self):
        self.__count = MyModel.objects.count()
        self.cache = caches['cache-storage']

    @property
    def total_count(self):
        return self.cache.get('total_count', self.__count)
Run Code Online (Sandbox Code Playgroud)

然后我以这种方式使用缓存的值:

# view.py

from .cache import Cache
cache = Cache()
...

   (some view)
   counter = cache.total_count
Run Code Online (Sandbox Code Playgroud)

python django caching django-1.7

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

如何统计 Django 网站的访问者数量?

如何计算网站上的访问者数量,以便每次用户访问网站时访问者数量都会增加。我可以使用以下代码计算访问者的浏览次数:

def blog_detail(request, blog_slug):
    blog = get_object_or_404(Blog, slug=blog_slug)
    session_key = 'blog_views_{}'.format(blog.slug)
    if not request.session.get(session_key):
        blog.blog_views += 1  # here
        blog.save()
        request.session[session_key] = True

    context = {
        'blog': blog,
        'categories': get_category_count()
    }

    return render(request, 'blogs/blog-detail.html', context)
Run Code Online (Sandbox Code Playgroud)

blog_views当我的模型中有字段时。我不知道是否有类似的方法来计算我的网站被访问的次数。

有些人建议使用hitcount,但除了通用视图之外我无法在任何地方使用它。如果您也建议,请用一些代码进一步详细说明,谢谢。太感谢了。

python django

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

如何从原始(二进制)ctype缓冲区构建python字符串?

我正在玩Python和ctypes,我无法弄清楚如何解决这个问题.我调用一个填充原始二进制数据的C函数.我的代码看起来像这样:

class Client():
  def __init__(self):
    self.__BUFSIZE = 1024*1024
    self.__buf = ctypes.create_string_buffer(self.__BUFSIZE)
    self.client = ctypes.cdll.LoadLibrary(r"I:\bin\client.dll")


  def do_something(self):
    len_written = self.client.fill_raw_buffer(self.__buf, self.__BUFSIZE)
    my_string = repr(self.__buf.value)
    print my_string
Run Code Online (Sandbox Code Playgroud)

问题是我正在接收二进制数据(带有0x00),当我尝试构建my_string时它被截断了.如果self._buf包含空字节0x00,我如何构建my_string?

欢迎任何想法.谢谢

python string ctypes

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

virtualenv + apt-get confusion

我已经开始使用virtualenv了,我有一个疑问,任何提示都会受到欢迎.

这是我的情景:

  1. 我激活了virtualenv并安装了一个包XXX(使用apt-get),它在我的virtualenv/site-packages中部署了一些python的东西.

  2. 停用virtualenv

  3. 运行apt-get upgrade XXX

在这种情况下,XXX的python东西会发生什么?它安装在全球网站包中?有什么东西可以打破?

对不起,如果这是一个愚蠢的问题,但部署python包对我来说有点模糊:/

python virtualenv

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