python , angular js 学习记录【3】

1.Alembic是SQLAlchemy作者编写的Python数据库迁移工具。用它实现模型类和数据库的同步更新。(安装以及操作步骤 使用Alembic迁移数据库

使用Alembic添加数据库字段操作流程:
切换至db_migrate目录下
(1).在model.py里面添加内容
(2).运行alembic revision --autogenerate -m "comment内容" 生成数据库迁移文件
(3).运行alembic upgrade head 将迁移文件的内容更新到数据库

2.liunx命令(详情请见linux系统硬件配置查看方法

(1)查看cpu

grep "model name" /proc/cpuinfo | cut -f2 -d:

(2)查看内存

grep MemTotal /proc/meminfo | cut -f2 -d:

(3)查看当前linux的版本

cat /etc/redhat-release

(4)查看内核版本

uname -a

(5)查看ip,mac地址

  ifconfig

查看网关

cat /etc/sysconfig/network

查看dns

cat /etc/resolv.conf

 3.angularjs中,如果想对dom元素进行操作,最合适的方法是在该dom上添加指令,一方面可以多处使用,另一方面,指令是在元素加载完成之后进行的,可保证元素一定存在。

//drawPage($scope,$http,1,Util);

变化为

<div id="main_client_order" clientorder>
</div>
function clientorder(Util,$http) {
        return {
            restrict: 'A',
            link: function ($scope, element, attrs) {
                drawPage($scope,$http,1,Util);
            }
        };

    }

因为在drawPage方法里面,存在替换元素的操作

function drawPanel(screenWidth, screenHeight) {
            svg = d3.select('#main_client_order')
                .append('svg:svg')
                .attr('width', screenWidth+100)
                .attr('height', screenHeight+100)
                .style("margin-left", "20px")
                .style("margin-top", "20px")
                .attr("id", "orderId");

            scope.svg = svg;
        }

4.数据库关联字段时,首先考虑到能不能在model里面通过方法等内容获取到,可以的话,就添加进去。一方面免去了维护添加字段之后的修改删除,另一方面,充分利用sqlalchemy的功能。

model.py

class Clientgroup(Base):
    __tablename__ = 'clientgroup'
    name = Column(String(255))
    def client_count(self):
        return Thinclient.query.filter_by(group_id=self.id).count()
serializer.py
class ClientgroupSerializer(Schema):
    client_count = fields.Function(lambda c: c.client_count())
    class Meta:
        fields = all_fields(Clientgroup)+['client_count']

页面获取如下:

<td>{{ group.client_count }}</td>

5.angularjs里面 类名或者方法名为参数时的处理方法:

(1)类名和方法名都为参数

var resource = $scope.case ? Model1.add_model1_disk : Model2.add_model2_disk;
resource({id: id}, function (data) {
     
            },function(e){
                
            })

(2)方法名为参数

var fun_name = "add";
Model[fun_name]({id: id}, function (data) {
     
            },function(e){
                
            })
原文地址:https://www.cnblogs.com/cuiyf/p/4885861.html