我正在使用django.contrib.auth用户管理系统.
所以我将注册/插入到用户表/模型中并从django.contrib.auth.views.login登录,以便我可以登录.
但是,我无法使用django.contrib.auth.views.logout注销
我有我的模板
<h1>My Account</h1>
<strong> Welcome, {{ name|capfirst }}!</strong>
<br /><br />
<ul>
<li>
{% if user.is_authenticated %}
<a href="{% url django.contrib.auth.views.logout %}">Logout</a>
{% else %}
<a href="{% url register %}">Sign Up</a>
</li>
<li>
<a href="{% url django.contrib.auth.views.login %}">Login</a>
{% endif %}
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
但是我总是得到名称和注销链接,因为当我点击注销按钮时我从未实际注销
这是我的urls.py部分:
urlpatterns += patterns('django.contrib.auth.views',
url(r'^login/$', 'login', { 'template_name': 'registration/login.html', 'SSL': settings.ENABLE_SSL }, 'login' ),
url(r'^my_account/$', 'logout', { 'template_name': 'registration/my_account.html', 'SSL': settings.ENABLE_SSL }, 'logout' ),
)
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?注意:我也使用mod_wsgi通过apache2运行django
谢谢!
添加信息:
不确定这是否有帮助,但我在html中打印了request.session.items并得到了
[('_auth_user_backend', 'django.contrib.auth.backends.ModelBackend'), ('_auth_user_id', 9L)] …Run Code Online (Sandbox Code Playgroud) 嘿,我是php和codeigniter的新手.我知道在codeigniter的视图中你可以回显像这样的变量
<?php echo $var ?>
Run Code Online (Sandbox Code Playgroud)
但如果说,我没有传递变量$ var,我得到一个令人讨厌的
<h4>A PHP Error was encountered</h4>
Run Code Online (Sandbox Code Playgroud)
在我的HTML源代码中.我在模板之前使用过django,如果变量不存在,它们根本就不渲染它.在php/codeigniter中有没有办法说'如果$ var存在,那么其他什么都不做'?
我试过了:
<?php if($title): ?>
<?php echo $title ?>
<?php endif; ?>
Run Code Online (Sandbox Code Playgroud)
但这是一个错误.谢谢!
Capistrano中的current_path和release_path路径变量有什么区别,如
task :path do
on roles :app do
puts "Release path: #{release_path}"
puts "Current path: #{current_path}"
end
end
Run Code Online (Sandbox Code Playgroud)
是否current_path总是包含最新的代码?
这个问题很简单,但我无法弄清楚
添加到我的urlpatterns
url(r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': '/home/user/www/site/static'})
Run Code Online (Sandbox Code Playgroud)
我的main.css是:/home/user/www/site/static/css/main.css
当我访问http:// localhost:8000/static /
我得到:404:这里不允许目录索引.
当我访问http:// localhost:8000/static/css/main.css时
我得到:404:'css/main.css'找不到
我究竟做错了什么?
固定它:
url(r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_ROOT } ),
Run Code Online (Sandbox Code Playgroud)
在settings.py中
# Absolute path to the directory static files should be collected to.
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/home/media/media.lawrence.com/static/"
STATIC_ROOT = os.path.join(CURRENT_PATH, 'static') #=='/home/user/www/site/static'
# URL prefix for static files.
# Example: "http://media.lawrence.com/static/"
STATIC_URL = '/mystatic/'
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,我唯一真正改变的是从STATIC_URL ='/ static …
我想创建一个聊天应用程序,它将使用php/codeigniter来执行视图和用户界面.我一直在阅读很多关于stackoverflow的帖子,推荐使用node.js或socket.io.然而,我也遇到了APE(Ajax Push Engine).我对这两者都不太了解,并且想知道要使用哪个.
我读了node.js并看到了很多关于它的好东西,但令我担心的主要问题是它相对较新并且没有很多真实世界的网站测试/使用它.
另一方面,APE确实如此.它看起来类似于node.js. 但就像我说的那样,我不知道要么知道选择哪一个.
哪一个更适合创建聊天应用?
谢谢!
geo = function(options){
geocoder.geocode( options, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var x = results;
alert('pear');
return x;
} else {
return -1;
}
});
}
getAddr = function(addr){
if(typeof addr != 'undefined' && addr != null) {
var blah = geo({ address: addr, });
alert('apple');
return blah;
}
return -1;
}
Run Code Online (Sandbox Code Playgroud)
因此,当我调用getAddr时,我得到了未定义,也首先提醒苹果,然后是梨.我意识到google以异步方式映射地理编码,但有没有办法让这个工作?
我正在使用 sorl-thumbnail 为图像列表生成缩略图。基本上我的代码看起来像
{% for image in image_list %}
{% thumbnail image.image "158x158" crop="center" as im %}
{% endthumbnail %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
问题是因为我在 for 循环中执行缩略图,每隔一段时间,sorl-thumbnail 需要运行 sql 查询,在我的情况下,每个图像一个查询,导致巨大的数据库瓶颈。我需要这个过程更有效,比如说一次执行列表中的所有缩略图查询?
那么我怎样才能使这个缩略图创建/检索过程更有效呢?
在考虑表现时,
1)在python/django或数据库中实现和检查约束是否更好?或两者兼而有之?
2)在django,哪里最好检查约束?例如在模型保存功能?
使用revel,golang 1.1.2,gorp,postgres 9.3.2上heroku
以下robfig列出预订示例
func (c App) ViewPosts(page int) revel.Result {
if page == 0 {
page = 1
}
var posts []*models.Post
size := 10
posts = loadPosts(c.Txn.Select(models.Post{},
`select * from posts offset ? limit ?`, (page-1)*size, size)) // error here
return c.RenderJson(posts)
}
Run Code Online (Sandbox Code Playgroud)
不知道我为什么会这样pq: syntax error at or near "limit".我假设合并查询是错误的.为什么查询最终不会像select * from posts offset 0 limit 10我一样在postgres上运行.我搞砸了哪里?
在我的项目中,我使用的是Rails 4.1.1和Ruby 2.1.1.我正在阅读mail宝石,但不知道如何检查是否deliver失败(由于任何原因).
result = UserMailer.signup.deliver
if result.action == 'failed' or result.bounced?
# How can you tell if a deliver has failed?
# Do stuff here if failed
end
Run Code Online (Sandbox Code Playgroud) django ×4
python ×4
postgresql ×2
sql ×2
web ×2
actionmailer ×1
ape ×1
capistrano ×1
chat ×1
codeigniter ×1
go ×1
google-maps ×1
javascript ×1
login ×1
logout ×1
node.js ×1
php ×1
revel ×1
ruby ×1
socket.io ×1
static ×1
url-pattern ×1
view ×1