小编Arn*_*ues的帖子

表之间的关系冲突

我一直在控制台上收到警告,我读了这么多书,但我无法解决这个问题,我快要疯了:

SAWarning:关系“Book.users”会将列 user.uid 复制到列 user_book.uid,这与关系冲突:“User.books”(将 user.uid 复制到 user_book.uid)。如果这不是本意,请考虑这些关系是否应与 back_populates 链接,或者如果它们是只读的,是否应将 viewonly=True 应用于一个或多个关系。对于不太常见的外键约束部分重叠的情况,可以使用 orm.foreign() 注释来隔离应写入的列。'overlaps' 参数可用于消除此警告。

控制台在本通知中引用的表格如下:

user_book = db.Table('user_book',
                     db.Column('uid', db.Integer, db.ForeignKey('user.uid'), primary_key=True),
                     db.Column('bid', db.Text, db.ForeignKey('book.bid'), primary_key=True),
                     db.Column('date_added', db.DateTime(timezone=True), server_default=db.func.now())
                     )


class User(db.Model):
    __tablename__ = 'user'

    uid = db.Column(db.Integer, primary_key=True)
    email = db.Column(db.String(25), nullable=False)
    hash = db.Column(db.String(), nullable=False)
    first_name = db.Column(db.String(30), nullable=True)
    last_name = db.Column(db.String(80), nullable=True)
    books = db.relationship('Book', secondary=user_book)

class Book(db.Model):
    __tablename__ = 'book'

    bid = db.Column(db.Text, primary_key=True)
    title = db.Column(db.Text, nullable=False)
    authors = db.Column(db.Text, nullable=False)
    thumbnail = db.Column(db.Text, …
Run Code Online (Sandbox Code Playgroud)

python postgresql sqlalchemy

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

在页脚上显示行数

我想对我的应用做一件简单的事情。 在此处输入图片说明

看一下我的主要ViewController:

class Page1: UITableViewController {
    override func numberOfSections(in tableView: UITableView) -> Int {
        return 1
    }

    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return Shared.instance.employees.count
    }

    override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! TableViewCell1

        cell.nameLabel.text = Shared.instance.employees[indexPath.row].name
        cell.positionLabel.text = Shared.instance.employees[indexPath.row].position

        return cell
    }

    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        if let destination = segue.destination as? Page2,
            let indexPath = tableView.indexPathForSelectedRow { …
Run Code Online (Sandbox Code Playgroud)

uitableview ios swift

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

如何减少 JSON 中的请求时间或用默认键替换字典键?

我有一个字典列表,我在搜索 JSON url 时正在填写它。问题是 JSON(由 Google Books API 提供)并不总是完整的。这是对书籍的搜索,据我所知,所有书籍都有 id、标题和作者,但并非所有书籍都有图像链接。以 JSON 链接为例:搜索哈利波特

请注意,它始终返回 10 个结果,在此示例中,有 10 个 ID、10 个标题、10 个作者,但只有 4 个图像链接。

@app.route('/search', methods=["GET", "POST"])
@login_required
def search():
    if request.method == "POST":
        while True:
            try:
                seek = request.form.get("seek")
                url = f'https://www.googleapis.com/books/v1/volumes?q={seek}'
                response = requests.get(url)
                response.raise_for_status()
                search = response.json()
                seek = search['items']
                infobooks = []
                for i in range(len(seek)):
                    infobooks.append({
                        "book_id": seek[i]['id'],
                        "thumbnail": seek[i]['volumeInfo']['imageLinks']['thumbnail'],
                        "title": seek[i]['volumeInfo']['title'],
                        "authors": seek[i]['volumeInfo']['authors']
                    })
                return render_template("index.html", infobooks=infobooks)
            except (requests.RequestException, KeyError, TypeError, ValueError): …
Run Code Online (Sandbox Code Playgroud)

python google-api flask google-books-api

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