我为我的应用程序使用了bootstrap菜单.它看起来像这样:
但当我将窗口大小更改为更小时,它会消失 - 看起来像这样:
它大约约965px时消失(所以可能是979px).我试过这个解决方案,没有用.可能是我正在混合bootstrap 2和3?这是我的菜单代码:
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<a class="brand" href="/">Digrin</a>
<div class="nav-collapse collapse">
<ul class="nav">
{{ request.path }}
<li{% block nav_stocks %}{% endblock %}><a href="/stocks/">Stocks</a></li>
<li{% block nav_mystocks %}{% endblock %}>
<a href="/stocks/mystocks">My Portfolio</a></li>
<li{% block nav_watchstocks %}{% endblock %}>
<a href="/stocks/watchstocks">Watcher</a></li>
{% if not user.is_authenticated %}
<li class="active"><a href="/accounts/login/?next=/stocks/">Login</a></li>
<li><a href="/accounts/register/">Register</a></li>
{% else %}
<ul class="nav">
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">
{{ user.username }}
<i class="caret"></i>
</a>
<ul class="dropdown-menu"> …Run Code Online (Sandbox Code Playgroud) 我在使用uwsgi和nginx设置服务器时遇到问题.这是我的uwsgi ini文件(和vassals中的符号链接):
# ebook_uwsgi.ini file
[uwsgi]
#emperor = /etc/uwsgi/vassals
#plugins = python #if uwsgi installed with pip, dont have to use this line
# Django-related settings
# the base directory (full path)
chdir = /var/www/django/ebook/ebook/wsgi/ebook/
# Django's wsgi file
module = controller.wsgi:application
# the virtualenv (full path)
home = /var/www/django/ebook
# process-related settings
# master
master = true
# maximum number of worker processes
processes = 10
# the socket (use the full path to be safe
socket = /var/uwsgi/ebook.sock …Run Code Online (Sandbox Code Playgroud) 我有一个奇怪的问题,没有想法可能是错的,所以也许在这里写它可以帮助我提出想法.或者有人可以帮助我:)
我有一个在牧场主运行的Django网站,过去几周我发现电子邮件无效.超时错误被提出.我使用mailgun.org作为SMTP服务器.
这是从牧场主容器控制台输出的:
/app/app # ipython
Python 2.7.14 (default, Dec 19 2017, 22:36:09)
Type "copyright", "credits" or "license" for more information.
IPython 5.5.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
In [1]: from smtplib import SMTP
In [2]: smtp = SMTP(host='smtp.mailgun.org', port=587)
Run Code Online (Sandbox Code Playgroud)
它只是挂起.添加超时当然会引发超时.
我猜想mailgun有问题.但是在本地运行相同图像上的相同代码(commit-hash匹配rancher容器上的代码).
docker run -ti registry.gitlab.com/namespace/app:commit-hash /bin/sh
/app/app # ipython …Run Code Online (Sandbox Code Playgroud) 我有一个 Django 网站,带有 model Event,可以说:
class Event(models.Model):
home = models.ForeignKey('Team', related_name='%(class)s_home')
away = models.ForeignKey('Team', related_name='%(class)s_away')
...
class Team(models.Model):
name = models.CharField("team's name", max_length=100)
Run Code Online (Sandbox Code Playgroud)
为此使用外键是一个坏主意,但无论如何,如何使其在 Django 管理页面中可用?
在管理编辑事件页面中,为此获取了大量外键:
http://127.0.0.1:8000/admin/event/event/116255/
它产生大量的选择,例如:
SELECT "event_team"."id", "event_team"."name" FROM "event_team" WHERE "event_team"."id" = 346;
页面就死了。我正在玩这些:
class EventAdmin(admin.ModelAdmin):
list_display = ('id', 'home', 'away', 'date_game', 'sport', 'result')
search_fields = ['home__name', 'away__name']
list_select_related = (
'home', 'away', 'league', 'sport', ...
)
def get_queryset(self, request):
return super(EventAdmin, self).get_queryset(request).select_related(*self.list_select_related)
admin.site.register(Event, EventAdmin)
Run Code Online (Sandbox Code Playgroud)
但没有运气。
不知道为什么,但我的typeahead.js远程自动完成停止工作.我没有更改任何关于typeahead.js的代码,但由于它被破坏了,我一定是错的.你能看看我的网站吗?我会创建jsfiddle,但多亏了Cross-Origin Request Blocked我无法包含我的依赖.
问题:
如果我输入"JN"或"AAP",这就是我得到的(建议是纯文本的):
此外,我想知道为什么自动完成在第三个字符输入后开始,而不是第一个(我使用minLength: 1).
我会将大部分代码粘贴到此处,因为我将来可能会更改我的网站.
进口:
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css">
<link rel="stylesheet" type="text/css" href="/static/css/typeahead.css">
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.js"></script>
<script type="text/javascript" src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<script type="text/javascript" src="//twitter.github.io/typeahead.js/releases/latest/typeahead.bundle.js"></script>
Run Code Online (Sandbox Code Playgroud)
Javascrip:
<script type="text/javascript">
$(function(){
var stocks = new Bloodhound({
datumTokenizer: function (datum) {
return Bloodhound.tokenizers.whitespace(datum.tokens);
},
queryTokenizer: Bloodhound.tokenizers.whitespace,
limit: 5,
remote: {
url: "/search/autocomplete/",
replace: function(url, query) {
return url + "?q=" + query;
},
filter: function(stocks) {
return $.map(stocks, function(data) {
return …Run Code Online (Sandbox Code Playgroud) 我一直在使用openshift很长一段时间.由于letsencrypt处于测试阶段,我认为我试了一下.
我当前的设置:
www.digrin.com是我的openshift网址的别名 - digrin-digrincom.rhcloud.com
digrin.com标记指向wwwizer重定向服务174.129.25.170.
我已将ssl证书上传到openshift.它在域上运行良好www.digrin.com.但是,由于裸域digrin.com指向wwwizer.com,因此不使用https.我相信这是一个问题.我想要两个域(裸体和www变体)使用https.可能吗?我知道wwwizer有一些可能的高级计划,但如果可能的话我想要一个免费版本.
如果你不知道,我不能为裸域设置cname,所以我不得不使用A标签到wwwizer,因为openshift可能会改变IP地址.
有用的链接:
如何使用裸露的GoDaddy域与OpenShift主机?
我安装某些python软件包时遇到了麻烦,因为我有TLS 1.0版本。如何升级到TLS 1.2?
python -c "import urllib2; import json; print(json.loads(urllib2.urlopen('https://www.howsmyssl.com/a/check').read())['tls_version'])"
TLS 1.0
Run Code Online (Sandbox Code Playgroud)
我的macOS版本:10.13.4(17E202)
python版本:Python 2.7.13
openssl版本:LibreSSL 2.2.7
我试图升级openssl,但它没有升级LibreSSL。我记得一年前我遇到了一些与openssl的问题,我可能已经手动将其链接了,或者::(
我无法使用我的ini文件在emperror模式下运行uwsgi.我安装了uwsgi sudo pip install uwsgi.
当我尝试启动uwsgi时,我收到错误:
sudo /etc/init.d/uwsgi start
/etc/init.d/uwsgi: line 72: /usr/share/uwsgi/init/snippets: No such file or directory
/etc/init.d/uwsgi: line 73: /usr/share/uwsgi/init/do_command: No such file or directory
[....] Starting app server(s): uwsgi/etc/init.d/uwsgi: line 80: do_command: command not found
failed!
Run Code Online (Sandbox Code Playgroud)
我正在使用Debian.首先,我试图关注django和nginx文档,但是当它不起作用时,我搜索了很多东西.这是我的ebook_uwsgi.ini文件:
# ebook_uwsgi.ini file
[uwsgi]
emperor = /etc/uwsgi/vassals
#plugins = python #if uwsgi installed with pip, dont have to use this line
# Django-related settings
# the base directory (full path)
chdir = /var/www/django/ebook/ebook/wsgi/ebook/
# Django's wsgi file …Run Code Online (Sandbox Code Playgroud) 我不知道为什么我的cron运行20分钟而且终止了.在openshift中,如果你运行cron,它会在5分钟后被杀死.如果你用nohup运行,它会在20分钟后被杀死.
这是我在cron_daily上的错误日志.文件update_dave_list运行20分钟:
Thu Nov 19 03:08:08 EST 2015: START daily cron run
__________________________________________________________________________
/var/lib/openshift/55a000094/app-root/runtime/repo//.openshift/cron/daily/update_dave_list:
WARNING:py.warnings:/var/lib/openshift/55a0000094/python/virtenv/lib/python2.7/site-packages/django_crontab-0.6.0-py2.7.egg/django_crontab/crontab.py:13: RemovedInDjango19Warning: django.uti$
from django.utils.importlib import import_module
/usr/libexec/openshift/cartridges/cron/bin/cron_runjobs.sh: line 114: 181616 Killed $executor "$SCRIPTS_DIR"
Warning: daily cron run terminated as it exceeded max run time
__________________________________________________________________________
Thu Nov 19 03:28:09 EST 2015: END daily cron run - status=137
__________________________________________________________________________
Run Code Online (Sandbox Code Playgroud)
问题是update_dave_list运行只需约20秒:
update_dave_list内容:
#!/bin/bash
date
nohup /var/lib/openshift/55000094/python/virtenv/bin/python /var/lib/openshift/55000094/app-root/runtime/repo/wsgi/digrin/manage.py crontab run 18e10bf4fb745d8a480230a3 # update dave lists
date
Run Code Online (Sandbox Code Playgroud)
输出:
Št nov 19 03:43:47 EST 2015 …Run Code Online (Sandbox Code Playgroud) 我在写一个简单的表格时遇到了问题.这是我表格的模型.
class UserStock(models.Model):
amount = models.FloatField(default=0)
date = models.DateTimeField('buy date')
stockPrice = models.FloatField(default=0)
user = models.ForeignKey(User)
stock = models.ForeignKey(Stock)
Run Code Online (Sandbox Code Playgroud)
这是我的forms.py文件
from django import forms
from datetime import date
class AddStockForm(forms.Form):
stock = forms.CharField(max_length=10)
amount = forms.FloatField(initial=0)
#, initial=date.today, input_formats=settings.DATE_INPUT_FORMATS
date = forms.DateField('buy date', initial=date.today)
stockPrice = forms.FloatField(initial=0)
Run Code Online (Sandbox Code Playgroud)
这是我提交表单数据的第一个版本.
@login_required(login_url='/login/')
def new_stock(request):
if request.method == 'POST':
form = AddStockForm(request.POST)
if form.is_valid():
cd = form.cleaned_data
#dateForm = datetime.datetime.strptime(cd['date'],"%Y-%m-%d")
userStock = UserStock(amount = cd['amount'], date=cd['date'], stockPrice = cd['StockPrice'])
userStock.user = request.user
stockForm = …Run Code Online (Sandbox Code Playgroud) 可能为时已晚,因为我完全不明白这个错误。我在models.py中创建了两个新类:
class SuggestionEmailSent(models.Model):
user = models.OneToOneField(User, related_name='suggestion_sent')
frequency = models.CharField(max_length=10, choices=EMAIL_FREQUENCY_CHOICES, default=EMAIL_FREQUENCY_CHOICES[0][0])
date = models.DateField(default=timezone.now)
class Meta:
unique_together = ("user", "date")
class SuggestionEmailContent(models.Model):
percentage = models.IntegerField()
buy_stock = models.ForeignKey('stocks.Stock', related_name='suggestion_email_buy_stock')
sell_stock = models.ForeignKey('stocks.Stock', related_name='suggestion_email_sell_stock')
portfolio = models.OneToOneField('portfolio.Portfolio', unique=True)
suggestion_sent = models.ForeignKey(SuggestionEmailSent, related_name='contents')
Run Code Online (Sandbox Code Playgroud)
然后我有一个代码:
try:
content = user.suggestion_sent.contents.get(portfolio=portfolio)
print content.sell_stock
except ObjectDoesNotExist: #mail not sent for this portfolio, send and save
content, created = SuggestionEmailContent.objects.create(percentage=percentage,
buy_stock=suggestion,
sell_stock=rank,
portfolio=portfolio,
suggestion_sent=user.suggestion_sent)
Run Code Online (Sandbox Code Playgroud)
这是错误回溯:Traceback(最近一次调用最后一次):
File "./test.py", line 49, in <module>
send_suggestion_email(User.objects.get(id=1))
File "/var/www/django/digrin/wsgi/digrin/suggestion/utils.py", line 192, …Run Code Online (Sandbox Code Playgroud) 对我来说,找出问题可能为时已晚.我有一个简单的形式forms.py:
class ImportPortfolioForm(forms.Form):
file = forms.FileField(required=True)
price_per_share = forms.BooleanField('Price per Share', required=False, initial=True,
help_text="If not checked, total cost is expected in Price column.")
Run Code Online (Sandbox Code Playgroud)
这是html:
<form method="post" action="" class="wide" class="form-horizontal" enctype="multipart/form-data">
<div class="col-md-6">
{% csrf_token %}
{% bootstrap_form form %}
<button type="submit" class="btn btn-primary">Import</button>
</div>
</form>
Run Code Online (Sandbox Code Playgroud)
这是views.py:
if request.method == 'POST':
form = ImportPortfolioForm(request.POST, request.FILES)
if form.is_valid():
data = form.cleaned_data
# work with file ...
else:
form = ImportPortfolioForm()
Run Code Online (Sandbox Code Playgroud)
如果我尝试加载表单网址,我收到错误:
TypeError: __init__() got multiple values for keyword …Run Code Online (Sandbox Code Playgroud) 我还没有找到足够好的答案,所以我在这里问。我有股息和股票模型。
class Dividend(models.Model):
attributes...
stock = models.ForeignKey(Stock)
Run Code Online (Sandbox Code Playgroud)
我需要创建Queryset的副本,因为我想将带有一些额外值的红利传递给模板,并且我不希望将这些额外值插入数据库。
dividend_set = stock.dividend_set.all().order_by('date')
dividend_set.create(...)
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?上面的代码将在我的stock.dividend_set中创建数据。我是否必须使用Deepcopy或将queryset转换为list?还是有更优雅的方式?
django ×8
python ×3
nginx ×2
openshift ×2
uwsgi ×2
autocomplete ×1
collapse ×1
cron ×1
css ×1
date ×1
date-format ×1
django-admin ×1
django-forms ×1
docker ×1
domain-name ×1
forms ×1
https ×1
macos ×1
mailgun ×1
openssl ×1
rancher ×1
smtplib ×1
tls1.2 ×1
typeahead.js ×1