小编You*_*wad的帖子

CSRF验证失败.请求中止.在django

我正在关注Django 1.3 Web开发.并且对于登录,我收到以下错误

Forbidden (403)
CSRF verification failed. Request aborted.
Help
Reason given for failure:
    CSRF token missing or incorrect.
Run Code Online (Sandbox Code Playgroud)

这是我的settings.py包含的APPS.这本书应该是这样说的.

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    # 'django.contrib.admindocs',
    'djangocricket.Cricket',
    'djangocricket.cms'
)
Run Code Online (Sandbox Code Playgroud)

这本书说,它应该包含,django.contrib.auth.views.login ..我把它包括在内

urlpatterns = patterns('',
    # Examples:
    url(r'^$', 'djangocricket.Cricket.views.index', name='default'),
    url(r'^user/(\w+)/$', 'djangocricket.Cricket.views.user_home', name='user home'),
    url(r'^login/$', 'django.contrib.auth.views.login'),
    # url(r'^djangocricket/', include('djangocricket.foo.urls')),

    # Uncomment the admin/doc line below to …
Run Code Online (Sandbox Code Playgroud)

django django-views django-registration

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

如何在PyCharm中更改作者变量

这个问题与PyCharm有关.

我如何更改变量中的值

__author__ = 'my login name'
Run Code Online (Sandbox Code Playgroud)

它需要我的shell用户变量.我可以在任何地方改变它吗?

pycharm

33
推荐指数
4
解决办法
2万
查看次数

在angular $ resource上添加自定义函数

我有一个像这样的角度资源

app.factory('User', function ($resource) {
    return $resource(
        '/api/user/:listCtrl:id/:docCtrl/', {
            id: '@id',
            listCtrl: '@listCtrl',
            docCtrl: '@docCtrl'
        }, {
            update: {
                method: 'PUT'
            },
            current: {
                method: 'GET',
                params: {
                    listCtrl: 'current'
                }
            },
            nearby: {
                method: 'GET',
                params: {
                    docCtrl: 'nearby'
                },
                isArray: true
            }
        }
    );
});
Run Code Online (Sandbox Code Playgroud)

现在我想在视图中有全名,我可以添加一个方法,这样当我这样做

$scope.user = User().current();
Run Code Online (Sandbox Code Playgroud)

而不是在HTML中执行以下操作

<p>{{ user.first_name }} {{ user.last_name }}</p>
Run Code Online (Sandbox Code Playgroud)

我这样做

<p>{{ user.get_full_name }}</p>
Run Code Online (Sandbox Code Playgroud)

有没有办法将此属性添加到$resource

javascript angularjs angularjs-scope angularjs-resource

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

django rest框架中的get_queryset方法和ViewSets

我正如示例所述

这是我的方法

class FeedViewSet(viewsets.ModelViewSet):
    model = Feed
    serializer_class = FullFeedSerializer

    def get_queryset(self):
        user = request.user
        queryset = Feed.objects.get_nearby(user)
        return queryset
Run Code Online (Sandbox Code Playgroud)

当我执行它时,它表示请求未定义..实际上并非如此.其余框架的网站上的示例也没有定义请求.我究竟做错了什么?

django-rest-framework

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

angular,django和csrf

来自http://docs.angularjs.org/api/ng.$ http,它说我们应该设置默认标头以包含令牌,所以我跟着它.

我的代码就是这样的

var myapp = angular.module('myapp', ['ngCookies', 'ui.bootstrap']).
    config(['$routeProvider', function($routeProvider, $httpProvider, $cookies){
        $routeProvider.
            when('/', {
                templateUrl: '/partials/home.html',
                controller: HomeCtrl
            }).
            when('/game/:gameId/shortlist/create',{
                templateUrl: '/partials/create-shortlist.html',
                controller: CreateShortlistCtrl
            }).
            otherwise({redirectTo: '/'});
    }]);

myapp.run(function($rootScope, $http, $cookies, $httpProvider){
    $http.get('/api/get-current-user').success(function(data){
        $rootScope.current_user = data;
        $rootScope.current_team = $rootScope.current_user.team;
    });
    $http.get('/api/get-current-season').success(function(data){
        $rootScope.current_season = data;
    });
    $rootScope.csrf_token = $cookies.csrftoken;
    console.log($httpProvider.defaults.headers.common);
    //$httpProvider.defaults.headers.post['X-CSRFToken'] = $cookies.csrftoken;
});
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我已经应用了多种方法,但无法使用csrf标记设置标头.我遇到的两个错误是

未捕获错误:未知提供者:$ httpProviderProvider < - $ httpProvider

我究竟做错了什么?

django csrf angularjs django-rest-framework

14
推荐指数
2
解决办法
9929
查看次数

Django FileField上传对我不起作用

我一直在挠头FileField.FileField是否需要单独的进程?

虽然我的网址被保存..但我的文件没有上传...我做错了什么?

这是我的models.py ...

class OpLink(models.Model):
    user = models.ForeignKey(User)
    file = models.FileField(blank=True, null=True, upload_to="uploads")
    url = models.URLField(blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

我的forms.py

class OpLinkForm(ModelForm):
    class Meta:
        model = OpLink
        exclude = ('user')
Run Code Online (Sandbox Code Playgroud)

我的views.py

oplinkform = oplinkform(request.POST)
                oplink = oplinkform.save(commit=False)
                oplink.user = user
                oplink.save()
Run Code Online (Sandbox Code Playgroud)

和我的HTML来处理它.

<div class="span5">
                            {{ oplinkform.url|add_class:"span4"|attr:"Placeholder:URL for the item" }}
                            <br><h4>OR</h4><br>
                            {{ oplinkform.file|add_class:"input-file" }}
                            <br />
                            <input class='btn btn-primary btn-large' type="submit" value='Post' name='action'>
</div>
Run Code Online (Sandbox Code Playgroud)

django django-models django-forms django-views

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

formfield_for_foreignkey和内联管理员

我只想在特定的比赛中展示与球队相关的球员.通常当我这样做时,它会向我显示数据库中的所有玩家.这是我的models.py

class InningsCard(models.Model):
    fixture = models.ForeignKey(Fixture)
    team = models.ForeignKey(Team)
    runs = models.IntegerField(max_length=6, default=0)
    wickets = models.IntegerField(max_length=6, default=0)
    overs = models.FloatField(max_length=6, default=0.0)

    def __unicode__(self):
        return str(self.team)

class BattingDetail(models.Model):
    STATUS_CHOICES = (
        ('no', 'not out'),
        ('bowled', 'bowled'),
        ('caught', 'caught'),
        ('lbw', 'lbw'),
    )
    innings = models.ForeignKey(InningsCard)
    player = models.ForeignKey(Player)
    runs = models.IntegerField(max_length=5, default=0)
    status = models.CharField(max_length=15, choices=STATUS_CHOICES, default='no')

    def __unicode__(self):
        return str(self.player)
Run Code Online (Sandbox Code Playgroud)

现在,这是我的admin.py包含formfield_for_foreignkey,但它不起作用.

class BattingInline(admin.TabularInline):
    model = BattingDetail
    extra = 0

    def formfield_for_foreignkey(self, db_field, request=None, **kwargs):

        if db_field.name == 'player':
            kwargs = Player.objects.filter(team …
Run Code Online (Sandbox Code Playgroud)

django django-admin

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

使用.net 3.5和C#检测Chrome

哦,我正在使用此代码来检测浏览器

<%= Request.Browser.Browser %>
Run Code Online (Sandbox Code Playgroud)

使用chrome时,它给了我浏览器

AppleMAC,Safari浏览器

我需要它说铬,Ater环顾四周,我发现了这一点

谷歌浏览器/ Safari浏览器名称和版本相同!

我做了问题答案中给出的所有内容,但这没有用.

我正在使用VS 2010并使用.net framework 3.5

谢谢.

编辑:我尝试过做这个页面上的建议

http://www.codemonkeez.com/2010/06/detect-google-chrome-browser-with.html

它还在给我

AppleMAC,Safari浏览器

:/

再次感谢.

c# asp.net

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

使用django-allauth

我在使用django-allauth时遇到了麻烦.我收到了这个错误.

NoReverseMatch at/accounts/login /反向'facebook_channel',参数'()'和关键字参数'{}'未找到.

到目前为止,我已经遵循了所有内容.

这是我的settings.py

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    # 'django.contrib.admindocs',
    'app',
    'uni_form',
    'emailconfirmation',
    'allauth',
    'allauth.account',
    'allauth.socialaccount',
    'allauth.socialaccount.providers.facebook',
    'allauth.socialaccount.providers.twitter',
)


TEMPLATE_CONTEXT_PROCESSORS = (
    "django.core.context_processors.request",
    "allauth.context_processors.allauth",
    "allauth.account.context_processors.account",
    "django.contrib.auth.context_processors.auth",
)

AUTHENTICATION_BACKENDS = (
    "allauth.account.auth_backends.AuthenticationBackend",
)
Run Code Online (Sandbox Code Playgroud)

我也从allauth提供的管理模块中添加了facebook secret和app id.

期待快速回复.

python django django-admin django-allauth

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

必须是列表或元组

这是我的代码

from League.models import Leagues
from League.models import Team
from django.contrib import admin

class TeamsInLeague(admin.StackedInline):
    model = Team
    extra = 1

class LeagueAdmin(admin.ModelAdmin):
    fields = ['LeagueName']
    inlines = TeamsInLeague

admin.site.register(Leagues,LeagueAdmin)
Run Code Online (Sandbox Code Playgroud)

它给了我错误

'LeagueAdmin.inlines'必须是列表或元组.

当我删除"inlines = TeamsInLeague"时,它工作正常

我正在按照教程,而不是单词,但试图解决我自己的问题

谢谢.

django django-admin

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