我想测试数据绑定的指南中给出这里.我已将其包含在我的build.gradle文件中(模块应用程序):
compileSdkVersion 'android-MNC'
buildToolsVersion '23.0.0 rc2'
Run Code Online (Sandbox Code Playgroud)
在项目build.gradle文件中,我已将其包含在我的依赖项中:
classpath "com.android.tools.build:gradle:1.3.0-beta2"
classpath "com.android.databinding:dataBinder:1.0-rc0"
Run Code Online (Sandbox Code Playgroud)
布局文件与指南中给出的文件完全相同.
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable name="user" type="com.example.User"/>
</data>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{user.firstName}"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{user.lastName}"/>
</LinearLayout>
</layout>
Run Code Online (Sandbox Code Playgroud)
最初它给出了一个错误Element layout does not have the required attribute layout_width and layout_height.
我尝试通过为两者分配match_parent来修复它.然后我Error parsing XML: duplicate attribute在我指定的线layout_height和layout_width线性布局上得到了错误
.
我再次试图通过删除这些属性来解决这个问题.现在,每当我尝试编译时,我都会看到 - error: package my.package.name.databinding不存在.
代码完成在我的Fragment中完美运行,我试图使用这个布局.
那么我错过了什么?
运行 PostgresSQL v10.5。
在我的表中有一个类型为 的table_a列。metadatajsonb
它有一个 JSON 数组作为其键之一,array_key其值如下所示:
[{"key1":"value11", "key2":"value21", "key3":"value31"},
{"key1":"value21", "key2":"value22", "key3":"value23"}]
Run Code Online (Sandbox Code Playgroud)
这就是我查询这个密钥的方式
SELECT metadata->>'array_key' from table_a
Run Code Online (Sandbox Code Playgroud)
这给了我整个数组。有什么方法可以只查询选定的键并可能格式化它们?
数组的类型是文本,pg_typeof(metadata->>'array_key')即text
理想的输出是
"value11, value13", "value21, value23"
Run Code Online (Sandbox Code Playgroud)