小编Raf*_*afa的帖子

Sql Alchemy无法将jsonb强制转换为boolean

我有以下值,我从模型中拉出来,并尝试强制转换为布尔值.但是,当我运行程序时,我得到一个错误,指出`不能将jsonb类型转换为布尔值.这里jsonb值的值是一个布尔值,那么为什么不能抛出呢?我需要改变什么?

我想要获取的数据值是布尔值 {"unsubscribe" : "True"}

这是导致错误的行.

args.append(Customer.data['unsubscribed'].cast(sqlalchemy.Boolean) == "{}".format(True))

这是客户模型

class Customer(Base):
    __tablename__ = 'customers'
    id = Column(UUID, primary_key=True, server_default='uuid_generate_v4()')
    phone_number = Column(String)
    data = Column(JSONB)
    created_at = Column(DateTime, server_default='NOW()')
    updated_at = Column(DateTime, server_default='NOW()')

    @property
    def agent_number(self):
        return self.data["agent"]["phoneNumber"]

    def __repr__(self):
        return '<Customer(id={}, phone_number={}, data={}, created_at={}, updated_at={})>'.format(
            self.id,
            self.phone_number,
            self.data,
            self.created_at,
            self.updated_at
        )
Run Code Online (Sandbox Code Playgroud)

python casting sqlalchemy

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

添加日志时 CMakeLists.txt (target_link_libraries) 中的 CMake 错误

我有一个带有 CMakeLists.txt 的 ndk 项目,看起来像这样

cmake_minimum_required(VERSION 3.4.1)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Werror")

add_library( # Specifies the name of the library.
        main

        # Sets the library as a shared library.
        SHARED

        # Provides a relative path to your source file(s).
        main.c)

target_link_libraries(
        android
        log
)
Run Code Online (Sandbox Code Playgroud)

它遵循 googlesamples github repo 上列出的所有 NDK 示例项目中列出的模式。我不断得到CMake Error at CMakeLists.txt (target_link_libraries),似乎大多数人都在用这条线解决它

add_library(debug <files Name>)
Run Code Online (Sandbox Code Playgroud)

但没有人将其添加到日志记录中。我究竟做错了什么?

android cmake android-ndk

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

应用程序尝试在发送文本时在目标上显示nil模态视图控制器

我正在尝试发送短信并设置控制器,但是我得到了一条错误消息'NSInvalidArgumentException', reason: 'Application tried to present a nil modal view controller on target <Ally.TextMessageController: 0x7fd5361278e0>.'我已经确保在我的故事板中我将它连接到TextMessageController所以我不太清楚是什么导致了崩溃.

class TextMessageController: UIViewController, MFMessageComposeViewControllerDelegate {

    var phone: String?
    override func viewDidLoad() {
        super.viewDidLoad()



        print(phone)
        var messageVC = MFMessageComposeViewController()

        messageVC.body = "Hey I need help, are you available";
        messageVC.recipients = ["555555555"]
        messageVC.messageComposeDelegate = self;

        presentViewController(messageVC, animated: false, completion: nil)

        // Do any additional setup after loading the view.
    }


    func canSendText() -> Bool {
        return MFMessageComposeViewController.canSendText()
    }

    func messageComposeViewController(controller: MFMessageComposeViewController!, didFinishWithResult result: MessageComposeResult) { …
Run Code Online (Sandbox Code Playgroud)

ios mfmessagecomposeviewcontroller swift

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

烧瓶登录@login_required无法正常工作

我正在使用flask-login登录,以确保用户登录后才能访问某些页面。我在@login_required要保护的视图上使用,但是即使我要设置login_user(user)要设置用户的位置,也不能让我进入受保护的路由(索引)。我正在打印出my的值,user_login(user)它会返回True。我究竟做错了什么?

@app.route('/')
@app.route('/index')
@login_required
def index():
    print("was in here", file=sys.stderr)
    return render_template('index.html')
Run Code Online (Sandbox Code Playgroud)

这是我设定的路线 user_login(user)

@app.route('/authenticate')
def authenticate():
    code = request.args.get('code')
    state = request.args.get('state')
    quiz_auth_response = quizlet_auth(code, state)

    g.token = quiz_auth_response['token']

    response = json.loads(make_request(quiz_auth_response['user_name']))

    try:
        user = models.User.get(models.User.username == response['username'])
        login_user(user)
    except models.DoesNotExist:
        print("does not exist", file=sys.stderr)
        user = models.User.create_user(response['username'], response['id'])
        return redirect('/index')
    else:
        login_user(user)
        print("log in user " + str(login_user(user)), file=sys.stderr)
        login_user(user)
        return redirect('/index')
Run Code Online (Sandbox Code Playgroud)

这是我的user_loader

@login_manager.user_loader
def load_user(userid):
    try:
        return models.User.get(models.User.id == …
Run Code Online (Sandbox Code Playgroud)

python flask flask-login

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

Kotlin函数不需要,但定义为其他类型

我已经定义了这样的课程

abstract class MvpViewHolder<P>(itemView: View) : RecyclerView.ViewHolder(itemView) where P : BasePresenter<out Any?, out Any?> {
    protected var presenter: P? = null

    fun bindPresenter(presenter: P): Unit {
        this.presenter = presenter
        presenter.bindView(itemView)
    }
}
Run Code Online (Sandbox Code Playgroud)

哪里presenter.bindView(itemView)给我一个错误说明Type mismatch, required: Nothing, found: View!。我已经像这样定义bindViewpresenter类的内部

abstract class BasePresenter<M, V> {
     var view: WeakReference<V>? = null
     var model: M? = null

     fun bindView(view: V) {
        this.view = WeakReference(view)
    }
}
Run Code Online (Sandbox Code Playgroud)

它的取值为view: V

我尝试定义BasePresenter<out Any?, out Any?>使用星型语法的扩展名, …

generics android kotlin kotlin-extension kotlin-android-extensions

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

Android Cardview 元素相互堆叠

我有cardview如下所示的布局,但文件中的两个元素彼此堆叠。我读过其他帖子,说要能够更有效地分隔元素,您必须在 内有另一个布局cardview,但它对我不起作用。如果我添加 aandroid:layout_above...那么其中一个元素就会消失。我想要一个元素高于另一个元素。谁能指出我做错了什么?

\n\n

在此输入图像描述

\n\n
<android.support.v7.widget.CardView\n    xmlns:card_view="http://schemas.android.com/apk/res-auto"\n    android:id="@+id/currentData"\n    android:layout_width="match_parent"\n    android:layout_height="wrap_content"\n    card_view:cardCornerRadius="4dp"\n    card_view:cardBackgroundColor="@color/orange">\n\n    <RelativeLayout\n        android:id="@+id/cardviewLayout"\n        android:layout_width="wrap_content"\n        android:layout_height="wrap_content"\n        android:layout_gravity="center"\n        android:padding="10dp"\n        android:orientation="vertical">\n\n        <TextView\n            android:id="@+id/time"\n            tools:text="this is the time"\n            android:layout_width="wrap_content"\n            android:layout_height="wrap_content"\n            android:layout_centerHorizontal="true"\n            android:layout_centerVertical="true"\n            android:layout_above="@+id/temperature"\n            android:textColor="@color/white"/>\n\n        <TextView\n            android:id="@+id/temperature"\n            tools:text="50\xc2\xb0"\n            android:layout_width="wrap_content"\n            android:layout_height="wrap_content"\n            android:layout_centerHorizontal="true"\n            android:layout_centerVertical="true"\n            android:textSize="50sp" />\n\n    </RelativeLayout>\n\n</android.support.v7.widget.CardView>\n
Run Code Online (Sandbox Code Playgroud)\n

android material-design android-cardview

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

WTF form.validate_on_submit()不起作用

我有以下代码,我正在提交表格.当我点击提交按钮时,我的表单验证打印出来False.我已经检查并确保我包含了不同帖子中的所有内容,但我无法让它验证.有什么我做错了吗?

@app.route('/index.html', methods=['GET', 'POST'])
    def index():   
            user = {'nickname': 'Rafa'}
            form = FilterForm()
            print("about to validate", file=sys.stderr)
            if form.validate_on_submit():
                    print("validated", file=sys.stderr)
                    filters_array = form.filter.split(',')
                    streaming(filters_array)
                    response = {"response", "yes"}
                    redirect("/authenticate")



            return render_template('index.html',
                    title="Home",
                    user=user,
                    form=form)

    class FilterForm(Form):
            filter = StringField('filter', validators=[DataRequired()])
Run Code Online (Sandbox Code Playgroud)

这是我的Jinja文件

    {% block content %}    
      <h1> I have successfully navigated to the title pagee </h1> 
      <h1> Hello, {{user.nickname}}!</h1> 
      <h1> Get Tweets </h1> 
      <p> Please enter a comma delimited list of filters</p>   
      <form action="" method="post" name="login"> 
        {{form.filter(size=80)}} 
      <input …
Run Code Online (Sandbox Code Playgroud)

flask wtforms flask-wtforms

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

使 JSONObject 可打包

我有一个 JSON 对象的数组列表,我试图像这样传递。

ArrayList<JSONObject> entryCities = new ArrayList<>();

for(int i = 0; i < entries.length(); i++){

    entryCities.add(entries.getJSONObject(i));

}

Intent intent = new Intent(UnitedStatesActivity.this, StateActivity.class);
intent.putExtra("object", entryCities);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

我知道这不起作用,我需要使我的数组或数组中的 JSON 对象可分割。我开始查看文档并提出了我想要传递的这个类ArrayList<JSONObject>,但我不确定应该在我的writeToParcel()方法中添加什么。

我是否写出了我想要提取的 JSON 对象的具体值?即 out.object.getString("string")然后将我的可包裹对象传递到下一个活动?我只是不确定在使 JSON 对象可打包的上下​​文中该方法的内容应该是什么。

公共类 StateParcelable 扩展 JSONObject 实现 Parcelable {

ArrayList<JSONObject> list;


public StateParcelable(ArrayList<JSONObject> list){
    this. list = list;
}

public void writeToParcel(Parcel out, int flags) {

}

public int describeContents(){
    return 0;
}

public static final Parcelable.Creator<StateParcelable> CREATOR
        = new Parcelable.Creator<StateParcelable>() …
Run Code Online (Sandbox Code Playgroud)

android json parcelable

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