小编fre*_*zed的帖子

通过 Travis-CI 部署到 Heroku 的问题

在使用 Heroku 进行部署时,我不断收到此错误,并且在通过 Travis 运行构建后尝试将其部署到 Heroku 的几个不同报告中得到了它。

No stash entries found.
API request failed.
Message: Invalid credentials provided.
Reference: 
failed to deploy
Run Code Online (Sandbox Code Playgroud)

我没有得到更多信息。我尝试更新我的 Heroku API 密钥,但这似乎不起作用。我已经使用了该Travis setup Heroku命令并手动创建了构建步骤,但我仍然遇到相同的错误。这是我的 .travis.yml 文件的部署部分的样子

部署:提供者:heroku api_key:安全:g3gj25vI58r48P63E...应用程序:heroku-travis-test-01 on:repo:andrico1234/heroku-travis-test

这是一个常见的问题吗?

编辑:添加 Travis 的安装依赖项堆栈跟踪

2.71s$ rvm $(travis_internal_ruby) --fuzzy do ruby -S gem install dpl
Fetching: dpl-1.10.0.gem (100%)
Successfully installed dpl-1.10.0
1 gem installed
dpl.1
Installing deploy dependencies
Fetching: multipart-post-2.0.0.gem (100%)
Successfully installed multipart-post-2.0.0
Fetching: faraday-0.15.2.gem (100%)
Successfully installed faraday-0.15.2
Fetching: rendezvous-0.1.2.gem (100%)
Successfully installed rendezvous-0.1.2 …
Run Code Online (Sandbox Code Playgroud)

heroku travis-ci

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

如何在 Django FormView 中使用 get_success_url() 发送成功消息

FormView如果表单有效,我将重定向到上一页。这工作正常,但我如何告诉用户信息已发布?我希望他在重定向后在模态窗口中看到成功消息。

我已经尝试完成request.sessionget_success_url但它不符合我的目标,因为用户可以多次提交表单。那么如何在get_success_urlin 中返回任何带有重定向的消息FormView

我的 FormView

class CatPhotoUploadFormView(FormView):
    template_name = 'blank.html'
    form_class = CatPhotoForm

    def get_success_url(self):
        self.request.session['success_message'] = 'Everything is fine'
        return reverse('cat:detail_cat', args=(self.kwargs['pk'],))

    def form_valid(self, form):
        cat = Cat.objects.filter(id__exact=self.kwargs['pk'])
        for each in form.cleaned_data['attachments']:
            print('****', each, '****', type(each))
            Photo.objects.create(photo_path=each, photo_author=self.request.user, photo_cat = cat[0])
        return super(CatPhotoUploadFormView, self).form_valid(form)
Run Code Online (Sandbox Code Playgroud)

django-forms django-class-based-views

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

无法使用 PyMySQL 插入日期

插入语句如下所示:

INSERT INTO events(ts, domain, url, lat_lon, sha1_hash)
VALUES (STR_TO_DATE(%s, '%Y-%m-%dT%H:%i:%sZ'), %s, %s, %s, sha1(url))
Run Code Online (Sandbox Code Playgroud)

当我尝试使用executemany发送批处理时,出现此错误:

Traceback (most recent call last):
  File "/vagrant/workspace/gdelt/gdelt_all.py", line 41, in <module> read_files()
  File "/vagrant/workspace/gdelt/gdelt_all.py", line 33, in read_files cursor.executemany(INSERT_FOUR, four)
  File "/usr/local/lib/python2.7/dist-packages/pymysql/cursors.py", line 195, in executemany self.rowcount = sum(self.execute(query, arg) for arg in args)
  File "/usr/local/lib/python2.7/dist-packages/pymysql/cursors.py", line 195, in <genexpr> self.rowcount = sum(self.execute(query, arg) for arg in args)
  File "/usr/local/lib/python2.7/dist-packages/pymysql/cursors.py", line 164, in execute query = self.mogrify(query, args)
  File "/usr/local/lib/python2.7/dist-packages/pymysql/cursors.py", line 143, …
Run Code Online (Sandbox Code Playgroud)

python mysql python-2.7 pymysql

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

在基于类的视图中限制经过身份验证的用户的"UpdateView"数据集

我有一个Django项目,我将用户扩展为使用OneToOneField获取配置文件.我正在使用CBV UpdateView,它允许用户更新他们的个人资料.他们访问的URL是../profile/ user/update.我遇到的问题是,如果用户键入其他用户名,他们可以编辑其他人员个人资料.如何限制UpdateView,以便经过身份验证的用户只能更新其配置文件.我试图做一些事情来确保user.get_username == profile.user但没有运气.

Models.py

from django.db import models
from django.contrib.auth.models import User
from django.db.models.signals import post_save
from django.core.urlresolvers import reverse

class Profile(models.Model):
    # This field is required.
    SYSTEM_CHOICES = (
        ('Xbox', 'Xbox'),
        ('PS4', 'PS4'),
    )
    system = models.CharField(max_length=5,
                                    choices=SYSTEM_CHOICES,
                                      default='Xbox')
    user = models.OneToOneField(User)
    slug = models.SlugField(max_length=50)
    gamertag = models.CharField("Gamertag", max_length=50, blank=True)
    f_name = models.CharField("First Name", max_length=50, blank=True)
    l_name = models.CharField("Last Name", max_length=50, blank=True)
    twitter = models.CharField("Twitter Handle", max_length=50, blank=True)
    video = models.CharField("YouTube URL", max_length=50, default='JhBAc6DYiys', help_text="Only the …
Run Code Online (Sandbox Code Playgroud)

python django django-views

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

%s设置正确,但PyMySQL仍抱怨%d

我是Python的新手,我正在尝试创建一个通过PyMySQL将数据保存到数据库的表单,但是我在连接数据库时遇到了问题.我已经按照示例代码(我的版本在下面)并彻底检查了所有语法和语音标记,但仍然收到以下错误.

File "c:\Users\Nimrod\Nimrod Dropbox\Dropbox\Nimrodsky\Python\Adiabatic Equation\DB connect with PyMySQL.py", line 10, in <module> charset='utf8')
File "C:\ProgramData\Anaconda3\lib\site-packages\pymysql\__init__.py", line 90, in Connect return Connection(*args, **kwargs)
File "C:\ProgramData\Anaconda3\lib\site-packages\pymysql\connections.py", line 706, in __init__ self.connect()
File "C:\ProgramData\Anaconda3\lib\site-packages\pymysql\connections.py", line 922, in connect self.host_info = "socket %s:%d" % (self.host, self.port)
TypeError: %d format: a number is required, not str
Run Code Online (Sandbox Code Playgroud)
import pymysql
import pymysql.cursors

# Connect to the database
connection = pymysql.connect(host='sql8.freesqldatabase.com', 
                            port='3306', 
                            user='********', 
                            password='**********', 
                            db='*********',
                            charset='utf8')


try:
    with connection.cursor() as cursor:
        # Create a new record
        sql = …
Run Code Online (Sandbox Code Playgroud)

python pymysql

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