小编eli*_*eli的帖子

Django ModelChoiceField:过滤查询集并将默认值设置为对象

我有一个Django Form类定义喜欢这个Models:

class AccountDetailsForm(forms.Form):
    ...
    adminuser = forms.ModelChoiceField(queryset=User.objects.all())
Run Code Online (Sandbox Code Playgroud)

这工作正常,但它有一些限制我似乎无法解决:

(1)我想在查询集上使用过滤器,基于accountid传递给表单的变量,如下所示:

User.objects.filter(account=accountid)
Run Code Online (Sandbox Code Playgroud)

这当然不能在模型中起作用,因为accountid当然不能作为变量传递.

因此queryset必须在某种程度上定义Views,但据我所知,它是Form类中的必填字段.

(2)我想AccountDetailsForm在数据库中默认选择一个对象,我可以这样选择Views:

User.objects.filter(account=accountid).filter(primary_user=1)
Run Code Online (Sandbox Code Playgroud)

我已经尝试将adminuser指定为表单中的默认值(可以与其他标准表单字段一起使用CharField):

adminuser = User.objects.filter(account=accountid).filter(primary_user=1)

...

form = AccountDetailsForm({'adminuser': adminuser})
return render_to_response('accounts/edit/accountdetails.html', 
{'form': form, 'account':account})
Run Code Online (Sandbox Code Playgroud)

但没有运气.

我应该使用除了ModelChoiceField我需要的灵活性以外的其他东西吗?

谢谢.

django django-forms

57
推荐指数
2
解决办法
6万
查看次数

如何在React中设置文档标题?

我想为我的React应用程序设置文档标题(在浏览器标题栏中).我尝试过使用react-document-title(似乎已经过时了)并且设置document.title在- constructor并且componentDidMount()- 这些解决方案都不起作用.

javascript dom reactjs

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

在Python email/smtplib中设置不同的回复消息

我正在使用Python电子邮件和smtplib从Python发送电子邮件.我是通过Gmail SMTP服务器使用我的Gmail凭据执行此操作的.这工作正常,但是我想指定一个与Reply-to地址不同的电子邮件from地址,以便回复转到单独的地址(非Gmail).

我试过reply to像这样创建一个参数:

   msg = MIMEMultipart()

   msg['From'] = "email@gmail.com"
   msg['To'] = to
   msg['Subject'] = subject
   msg['Reply-to'] = "email2@domain2.com"
Run Code Online (Sandbox Code Playgroud)

但这不起作用.在Python文档中找不到任何关于此的信息.

谢谢.

python email smtplib

31
推荐指数
3
解决办法
2万
查看次数

使用PhantomJS进行DOM操作

我正在使用PhantomJS从任意URL创建屏幕截图.在截屏之前,我想操作页面DOM以删除所有下拉菜单,因为PhantomJS在页面的左上角错误地呈现它们(已知的幻影问题).

我有一个简单的DOM脚本来执行此操作:

    var selects = document.getElementsByTagName('select');

    for (var i=0; i < selects.length; i++) {
        document.getElementsByTagName('select')[i].style.visibility="hidden";
    }
Run Code Online (Sandbox Code Playgroud)

这已经过测试,可以作为独立的Javascript使用.然而,它不能用于我用于收集屏幕截图的PhantomJS代码(最后显示的部分):

  page.open(address, function (status) {

    if (status !== 'success') {
        console.log('Unable to load the address!');
    } else {
        window.setTimeout(function () {

            var selects = document.getElementsByTagName('select');

            for (var i=0; i < selects.length; i++) {
                document.getElementsByTagName('select')[i].style.visibility="hidden";
            }

            page.render(output);

            phantom.exit();

        }, 200);
    }
});
Run Code Online (Sandbox Code Playgroud)

某些页面仍在使用选择框在错误的位置进行渲染.我很感激帮助解决原始的PhantomJS渲染错误或隐藏DOM中的下拉菜单.谢谢.

dom phantomjs

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

ContentType 未声明显式 app_label

我正在使用 Apache 和 mod_wsgi 将 Django 1.10 项目部署到 Ubuntu 服务器上。我收到以下无法解决的 500 错误:

运行时错误:模型类 django.contrib.contenttypes.models.ContentType 未声明显式 app_label 并且不在 INSTALLED_APPS 中的应用程序中。

settings.py 中的 installed_apps:

INSTALLED_APPS = [
    'django.contrib.sites',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'dashboard',
]
Run Code Online (Sandbox Code Playgroud)

wsgi.py:

sys.path.append('/home/x_dashboard/x_dashboard/')

activate_this = os.path.expanduser("/home/x_dashboard/.venv/bin/activate_this.py")
execfile(activate_this, dict(__file__=activate_this))

os.environ['PYTHON_EGG_CACHE'] = '/home/x_dashboard/x_dashboard/.python-egg'
os.environ['DJANGO_SETTINGS_MODULE'] = 'x_dashboard.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Run Code Online (Sandbox Code Playgroud)

阿帕奇配置:

<VirtualHost *:80>
   #ServerName example.com
   #ServerAlias www.example.com
   #ServerAdmin username@example.com

   DocumentRoot /home/x_dashboard/x_dashboard/

   #ErrorLog /var/www/html/example.com/logs/error.log
   #CustomLog /var/www/html/example.com/logs/access.log combined

   WSGIScriptAlias / /home/x_dashboard/x_dashboard/x_dashboard/wsgi_local.py

   #Alias /robots.txt /var/www/html/example.com/public_html/robots.txt
   #Alias /favicon.ico /var/www/html/example.com/public_html/favicon.ico
   #Alias /images /var/www/html/example.com/public_html/images …
Run Code Online (Sandbox Code Playgroud)

apache django mod-wsgi

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

从API识别全局Facebook页面

Facebook最近为品牌推出了全球网页:

http://www.facebook-studio.com/news/item/announcing-a-new-pages-structure-for-global-brands

这些页面具有区域别名.例如,http://www.facebook.com/asos.france指向ASOS全局页面,但仅显示法语内容.

我的问题是:是否可以通过Facebook的API识别给定的页面URL是否是

  1. 全局页面的区域版本,或
  2. 标准页面

facebook-graph-api

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

Twitter按钮回复推文

我正在寻找一种方法来创建一个Twitter按钮,该按钮会在没有API的情况下自动发布对现有推文的回复.

单击该按钮将打开一个带有Twitter状态表单的弹出窗口.从窗口发推文会创建一个回复,其中的tweet_id会在其元数据中回复.

任何帮助赞赏.

twitter

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

通过约束选择将参数传递给Django中的视图

我正在寻找将两个参数中的任何一个传递给URL中的视图的最佳方法,而不允许任何其他参数.

例如,使用以下URL:

(r'^friends/requests', 'app.views.pendingFriends'),

(r'^friends/offers', 'app.views.pendingFriends'),
Run Code Online (Sandbox Code Playgroud)

如果可以将URL传递给视图,那么pendingFriends知道从哪个URL调用它就可以了.但是,我看不到这样做的方法.

相反,我可以将URL中的参数(requestsoffers)提供给单个Django视图,

(r'^friends/(?P<type>\w+', 'app.views.pendingFriends'),
Run Code Online (Sandbox Code Playgroud)

这个论点将告诉pendingFriends我们该怎么做.但是,这留下了传递给URL的其他参数的可能性(除了requestsoffers.)

理想情况下,我希望URL调度程序在无效参数传递给视图之前停止发生这种情况(通过404).所以我的问题是(a)这是最好的方法,(b)有没有办法约束传递给URL中的视图的参数requestsoffers

谢谢

python django django-urls

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

计算 Django 模板中的对象数量

我是 Django 新手。我想计算并显示满足模板中条件的对象数量。

我有一个用户模型和帐户模型。用户有一个外键字段帐户,它映射到帐户对象。

在模板中,我想计算每个帐户的用户数量。

我得到的最接近的是:

{% for account in accounts %}

    {% for user in users %}

        {% if equal user.account.id account.id %}

            {{ user.count }}

        {% endif %}

    {% endfor %}

{% endfor %}
Run Code Online (Sandbox Code Playgroud)

谢谢

django django-templates

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

Jquery表搜索与分页

我在数据表上使用quicksearchtablesorter.pager Jquery插件.

我可以使用quicksearch来过滤单个页面上的结果,而不是所有页面上的所有数据.

我想知道是否有其他人使用这些或任何其他jQuery插件解决了这个问题.

jquery tablesorter quick-search

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

在Mac OS 10.14.1上安装MySQL-Python时出现问题

我最近升级到Mac OS Mojave,现在无法安装MySQL-Python:

pip install MySQL-Python

...
clang -bundle -undefined dynamic_lookup build/temp.macosx-10.13-x86_64-2.7/_mysql.o -L/usr/local/opt/mysql-client/lib -lmysqlclient -lssl -lcrypto -o build/lib.macosx-10.13-x86_64-2.7/_mysql.so
ld: library not found for -lssl
clang: error: linker command failed with exit code 1 (use -v to see invocation)
error: command 'clang' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)

堆栈跟踪显示未找到“ ssl”库。我不确定这是什么意思,因为我已经安装了最新的XCode和OpenSSL。任何建议表示赞赏。

pip mysql-python macos-mojave

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