小编Hou*_*run的帖子

如何在PixelAdmin模板中将select2依赖插件更新到4.0.6版

我正在使用Pixel Admin模板,它不是我现在认为的当前版本,用于实现使用旧版本的select2依赖版本3.5.1的jinja2 web应用程序.它工作正常,除了在iso设备上查看时,虚拟键盘始终显示在触摸select2上.

我知道这个bug已经在select2最新版本4.0.6中修复了,所以我想把它改成这个版本.

的layout.html

<!DOCTYPE html>
<html class="gt-ie8 gt-ie9 not-ie pxajs">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Web Application</title>

        <script src="{{ url_for('static',filename='js/jquery-1.11.1.min.js') }}"></script>
        <script src="{{ url_for('static',filename='js/bootstrap.min.js') }}"></script>

        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='stylesheets/bootstrap.min.css') }}">
        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='stylesheets/pixel-admin.min.css') }}">
        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='stylesheets/rtl.min.css') }}">
        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='stylesheets/themes.min.css') }}">
        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='stylesheets/pages.min.css') }}">
        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='stylesheets/widgets.min.css') }}">
        <script src="{{ url_for('static',filename='javascripts/dynamic_con.js') }}"></script> …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery jinja2 jquery-select2

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

CKEditor - HTML代码不断添加新行我在源代码视图和wysiwyg视图之间切换?

我尝试将jinja代码保存在CKEditor中,就像我在代码视图和WYSIWYG视图之间切换视图一样.

我可以通过在我的config.js文件中添加以下行来获得此结果

CKEDITOR.config.protectedSource.push(/\r|\n/g);

CKEDITOR.config.autoParagraph = false;
Run Code Online (Sandbox Code Playgroud)

但是,它对HTML代码不起作用.例如,如果jinja代码和这样html混合在一起:

{% if name=='bob' %}
    {{'hello bob'}}
{%else%}
    {{ 'hello ' + name }} 
{% endif %}

<p>Hello visitor</p>
Run Code Online (Sandbox Code Playgroud)

这是Fiddle JS上的 Demo

在此之后,当我在CKEditor中从代码视图更改为wyiwyg视图时,HTML代码只增加了一行,另一行用于另一个切换视图,如下所示:

在此输入图像描述

我找不到HTML代码有什么问题,我只是格式化jinja代码,我该如何解决?谢谢

html jinja2 ckeditor4.x

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

如何为超出内容创建新的页面元素?

我尝试根据其中的内容量创建一些<page></page>a4.如果内容超过了高度<page></page>,我想创建一个新<page></page>的内容超过上一页.

var element = document.getElementsByClassName('a4')[0];

var editorHeight = element.offsetHeight;

var pages = element.childElementCount * 1123;

var pageNumber = element.getElementsByClassName('a4').length + 1;

if (editorHeight < pages) {

  var newPage = document.createElement('page');
  newPage.setAttribute('size', 'A4');
  newPage.setAttribute('class', 'a4');
  newPage.dataset.pages = pageNumber;
  element.appendChild(newPage);


}
Run Code Online (Sandbox Code Playgroud)
body {
  background: rgb(204, 204, 204);
}

page {
  background: white;
  display: block;
  text-align: justify;
  margin: 20px;
  margin-bottom: 0.5cm;
  box-shadow: 0 0 0.5cm rgba(0, 0, 0, 0.5);
}

page[size="A4"] {
  width: 21cm;
  height: …
Run Code Online (Sandbox Code Playgroud)

html javascript css

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

从日期字段按月份和年份分组

来自下表Loan_Amendment中的数据:

    ID     |     Amount     | AddDeduct | AmendDate  
-----------+----------------+-----------+------------
 LT0000160 | 1000.000000000 | 2         | 2018-02-08
 LT0000170 | 1500.00000000  | 1         | 2018-02-10
 LN0000577 | 1000.000000000 | 1         | 2018-03-20
 LN0000587 | 2000.000000000 | 2         | 2018-03-20
Run Code Online (Sandbox Code Playgroud)

我试图选择Amount具有相同年份和月份的sum字段AmendDate

因此,我尝试如下选择查询SQLALchemy

AmendObj = db.session.query(func.sum(Loan_Amendment.Amount).label('Amount'),
                            Loan_Amendment.AmendDate).\
    group_by(Loan_Amendment.AmendDate).\
    first()
Run Code Online (Sandbox Code Playgroud)

但是,从我尝试过的上述查询中,我只能按完全相同的日期(年、月和日)对AmendDate.

更新:

我的模型如下所示:

class Loan_Amendment(Object):
    ID              =   db.Column(db.String(13), primary_key=True)
    AddDeduct       =   db.Column(db.String(1))
    Amount          =   db.Column(db.Numeric(25, 9))
    AmendDate       =   db.Column(db.String(20))
Run Code Online (Sandbox Code Playgroud)

目前,我使用Flask-SQLAlchemy==2.0andSQLAlchemy==0.9.9和 DB …

python postgresql sqlalchemy

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

如何在quick_form烧瓶引导程序中将类添加到标签

使用quick_form Flask-Bootstrap生成的形式对我来说是非常方便的,但是,我不能在他们找到的文档的方式,我可以额外类添加到label所要求的我的模板主题。

我的 forms.py 类如下所示:

from flask_wtf import Form
from wtforms import StringField,PasswordField,TextField,SubmitField
from wtforms.validators import InputRequired,EqualTo,Email,ValidationError

class Building_Form(Form):
    BuildingName = TextField('Building Name')
    BuildingType = TextField('Building Type')
    FloorNums    = TextField('Numers of Floor')
    BuildUnits   = TextField('Units in Building')
    BuildSize    = TextField('Building Size')
    BuiltYear    = TextField('Built in (year)')
    BuildOpeningTime = TextField('Open Time')
    BuildClosingTime = TextField('Close Time')
Run Code Online (Sandbox Code Playgroud)

我的routes.py如下所示:

from app.import_core import *
from flask_wtf import FlaskForm
from wtforms import Form, BooleanField, StringField, PasswordField, validators
from …
Run Code Online (Sandbox Code Playgroud)

flask python-2.7 flask-wtforms flask-bootstrap

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

为什么Select2在iOS设备上运行不正常?

我正在使用select2Pixels Admin Template中的库.我注意到它在桌面和Android设备上运行良好.但是,在iOS设备上查看时,下拉列表无法打开.我不知道为什么会这样.

$(document).ready(function() {
  var init = [];

  init.push(function() {
    var $select2 = $("#Salutation,#Gender").select2();
    $select2.on('select2:select select2:unselect', () => {
      $(":focus").blur();
    });
  })

  window.PixelAdmin.start(init);
});
Run Code Online (Sandbox Code Playgroud)
body .select2-container.select2-container--default.select2-container--open {
  top: 305px!important;
  left: 22px!important;
}

.select2.select2-container.select2-container--default.select2-container--below.select2-container--open {
  top: auto!important;
}
Run Code Online (Sandbox Code Playgroud)
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Select2</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="pixel-admin.min.js"></script>
<link rel="stylesheet" href="pixel-admin.min.css">
<link href="https://stackpath.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
<script src="https://stackpath.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/select2/3.4.5/select2.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/3.4.5/select2.min.js"></script>

<div class="container">
  <div class="row">
    <div class="col-xs-4 col-xs-offset-4">
      <h3>Application Form</h3>
      <form class="form" action="/action_page.php"> …
Run Code Online (Sandbox Code Playgroud)

javascript jquery-select2

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

在 JavaScript 中上传之前减小 PDF 文档大小?

我正在上传一份文档 (PDF),其中主要包含在 CamScanner(CS) 应用程序的帮助下从手机摄像头现场拍摄的图像。

我可以处理图像文件上传以减小图像的大小,但无法在上传之前减小 PDF 文档的大小。

根据多个来源的建议,一种方法是调整图像文件的大小,使用jspdf生成 PDF 文件并开始上传 PDF 文件。

// Compress image and convert to pdf

function resizeBase64Img(base64, width, height) {
    var canvas = document.createElement("canvas");
    canvas.width = width;
    canvas.height = height;
    var context = canvas.getContext("2d");
    var deferred = $.Deferred();
    $("<img/>").attr("src", "data:image/gif;base64," + base64).on('load',function() {
        context.scale(width/this.width,  height/this.height);
        context.drawImage(this, 0, 0); 
        deferred.resolve($("<img/>").attr("src", canvas.toDataURL()));               
    });
    return deferred.promise();    
}

//select my image in base64
var imageStr64 = "/9j/4RiDRXhpZgAATU0AKgA...";
//resize image, add image and create the pdf
resizeBase64Img(imageStr64, 1000, 1000).then(function(newImg){ …
Run Code Online (Sandbox Code Playgroud)

javascript pdf

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

如何使用 python 绳重构模块?

我的项目结构如下

??? app
?   ??? Country
?   ?   ??? views.py
?   ??? Customer
?   ?   ??? views.py
Run Code Online (Sandbox Code Playgroud)

模块“Country”文件夹是我尝试将其重命名为“Countries”的地方,并且每次使用它时,它也被导入Customer/views.py

from app.Country.views   import *
....
Run Code Online (Sandbox Code Playgroud)

根据本教程Refactoring Python Applications for Simplicity,我尝试如下:

>>> from rope.base.project import Project
>>> 
>>> proj = Project('app')
>>> 
>>> Country = proj.get_folder('Country')
>>> 
>>> from rope.refactor.rename import Rename
>>> 
>>> change = Rename(proj, Country).get_changes('Countries')
>>> proj.do(change)
Run Code Online (Sandbox Code Playgroud)

执行脚本后,模块文件夹'Country'被更改为'Countries',但是它在Customer/views.py中使用的实例没有相应改变,Customer/views.py中的import语句仍然存在

from app.Country.views   import *
Run Code Online (Sandbox Code Playgroud)

我预计它应该from app.Countries.views import *在重构后更改为,但它没有。

我还应该做些什么来成功地重构它?谢谢。

python rope

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

将字典转换为字典

我有像这样的字典的字符串:

{"h":"hello"}
Run Code Online (Sandbox Code Playgroud)

我想按照这里的指示将其转换为实际字典

>>> import json
>>> 
>>> s = "{'h':'hello'}"
>>> json.load(s)
Run Code Online (Sandbox Code Playgroud)

然而,我收到了一个错误:

回溯(最近通话最后一个):文件"",1号线,在文件"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/ 初始化的.py",线路286,在加载返回负载(fp.read(),

AttributeError:'str'对象没有属性'read'

我的代码有什么问题,以及如何将字符串转换为实际字典?谢谢.

python json dictionary

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

如何在wysiwyg编辑器中保持html属性不变?

在所见即所得的文本编辑器源代码视图中,我有这个简单的html:

<span style="font-family: Moul;" {%if  loop.first=='first'%} first="" {%endif%}>Hello Text</span>
Run Code Online (Sandbox Code Playgroud)

但是,当我从源视图切换到可视视图时,wysiwyg将我的html代码更改为:

<span style="font-family: Moul;" {%if="" loop.first="='first'%}" {%endif%}="">Hello Text</span>
Run Code Online (Sandbox Code Playgroud)

但是,我想保留我的html,而不是通过文本编辑器更改.

$('#summernote').summernote({
  height: 300
});
Run Code Online (Sandbox Code Playgroud)
body {
  padding: 40px;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap.min.css">
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.1.0/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.5.0/summernote.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.5.0/summernote.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.5.0/summernote-bs3.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.0.3/css/font-awesome.min.css">

<textarea name="summernote" id="summernote" cols="30" rows="10">
</textarea>
Run Code Online (Sandbox Code Playgroud)

编辑:

事实上,wysiwyg将单个html属性转换为附加"="和双引号" ".我测试了<input type="checkbox" checked>在wysiwyg的源视图中写入,它将被转换属性检查为这样:因为wysiwyg将单个属性视为无效属性,因此它附加等号"="并双引号""输出<input type="checkbox" checked="">.您可以在上面的代码段中测试它.因此,这是我的jinja2上面的语法附加,=" "在运行时导致语法错误异常.

我试图使用正则表达式来帮助让wysiwyg改变我的html,如下所示:

codeview = $('summernote').summernote('code');
console.log(codeview);
Regx  =  /(\<.*\s*\{\%[^}]*\%\}.*\s*\>)/g;
codeview.replace(Regx,'$1'); …
Run Code Online (Sandbox Code Playgroud)

html javascript wysiwyg jinja2 summernote

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