如何在Django中查询/过滤并忽略我的查询字符串的情况?
我有类似的东西并且喜欢忽略以下情况my_parameter:
MyClass.objects.filter(name=my_parameter)
Run Code Online (Sandbox Code Playgroud) 我创建了一个ModelSerializer并且想要添加一个不属于我的模型的自定义字段.
我在这里找到了添加额外字段的说明,并尝试了以下内容:
customField = CharField(source='my_field')
Run Code Online (Sandbox Code Playgroud)
当我添加此字段并调用我的validate()函数时,此字段不是attrdict的一部分.attr包含除额外字段外指定的所有模型字段.所以我在覆盖验证中无法访问此字段,是吗?
当我将此字段添加到字段列表时,如下所示:
class Meta:
model = Account
fields = ('myfield1', 'myfield2', 'customField')
Run Code Online (Sandbox Code Playgroud)
然后我得到一个错误,因为customField它不是我的模型的一部分 - 什么是正确的,因为我想只为这个序列化器添加它.
有没有办法添加自定义字段?
我试着得到一个不同的外键列表,我写了这个:
my_ids = Entity.objects.values('foreign_key').distinct()
Run Code Online (Sandbox Code Playgroud)
但我只得到一份UNDISTINCT外键列表......我错过了什么?
谢谢!
我使用的是PHPStorm在Win7 64bit与64bit Java (latest version I guess)目前的出奇的大,混乱的项目.有许多类包含10k LOC更多.因此我PHPStorm偶尔会耗尽内存.
我得到了这个很好的Out-of-Memory对话框,建议增加我的内存设置.我目前设置在我的PhpStorm.exe.vmoptions:
-server
-Xms128m
-Xmx512m
-XX:MaxPermSize=250m
-XX:ReservedCodeCacheSize=64m
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-XX:+UseCodeCacheFlushing
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
Run Code Online (Sandbox Code Playgroud)
问题是:当我增加内存以便在此文件中使用时,启动程序时出现以下错误:
无法创建JVM:错误代码-4
我Google左右,但似乎没有人想要的内存要多比512MB.
有没有人知道我能做什么才能再次使用PHPStorm而不用麻烦?
当然,我可以重置缓存,但这不是一个永久的解决方案,对吧?
我在某处读到了将这一行添加到我vmoptions的想法是个好主意,但我没有看到任何区别:
-server
....
-XX:MinHeapFreeRatio=15
Run Code Online (Sandbox Code Playgroud) 如何使用Django获取主机服务器的名称?
我需要托管服务器的名称而不是客户端名称?
如何在特定时间运行异步任务?(我想每隔2分钟运行一次)
我试过使用post延迟但它不起作用?
tvData.postDelayed(new Runnable(){
@Override
public void run() {
readWebpage();
}}, 100);
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,readwebpage是为我调用异步任务的函数.
现在下面是我正在使用的方法
public void onCreate(Bundle savedInstanceState) {
readwebapage();
}
public void readWebpage() {
DownloadWebPageTask task = new DownloadWebPageTask();
task.execute("http://www.google.com");
}
private class DownloadWebPageTask extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... urls) {
String response1 = "";
response1=read();
//read is my another function which does the real work
response1=read();
super.onPostExecute(response1);
return response1;
}
protected void onPostExecute(String result) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// …Run Code Online (Sandbox Code Playgroud) 我想从用户类对象创建多对多关系.
我有这样的事情:
class MyUser(models.Model):
...
blocked_users = models.ManyToManyField(MyUser, blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)
问题是我是否可以在其内部使用类引用.或者我必须使用"self"插入"MyUser"的ManyToManyField?或者还有另一种(更好的)方法吗?
如何在google maps api v3中点击地图上的纬度,经度.我已经使用此代码在google maps api v2中完成了此操作
GEvent.addListener(map, "click", function(overlay, latlng) {
if (latlng) {
marker = new GMarker(latlng, {draggable:true});
GEvent.addListener(marker, "click", function() {
//alert("hello");
var html = "<table>" +
"<tr><td>Name:</td> <td><input type='text' id='name'/> </td> </tr>" +
"<tr><td>Time:</td> <td><input type='text' id='time'/> </td> </tr>" +
"<tr><td>Bus Id:</td> <td><input type='text' id='busId'/> </td> </tr>" +
"<tr><td>Device Id:</td> <td><input type='text' id='deviceId'/> </td> </tr>" +
"<tr><td></td><td><input type='button' value='Save & Close' onclick='saveData()'/></td></tr>";
marker.openInfoWindow(html);
});
map.addOverlay(marker);
}
});
Run Code Online (Sandbox Code Playgroud)
如何在v3中做同样的事情?
我试过这个,但它没有用.
google.maps.event.addListener(map, "click", function(overlay,latlng) {
if (latlng) { …Run Code Online (Sandbox Code Playgroud) 我建立一个WebView显示网站.该网站包含没有target="_blank"属性的链接和一些带有它的链接.
我需要打开target外部标准设备浏览器中定义的链接和WebView中没有它的链接.
我正在使用一个WebViewClient,我尝试了这个功能,但我的所有链接仍在以下内容中打开WebView:
备选方案1:
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return super.shouldOverrideUrlLoading(view, url);
}
Run Code Online (Sandbox Code Playgroud)
备选方案2:
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
Run Code Online (Sandbox Code Playgroud)
有人知道如何在外部打开空白链接吗?
谢谢!
PS:为了避免误解:我不能使用这种方法,因为我知道链接的唯一方法应该是外部打开target属性.
我ListView在我的布局中使用了这样的:
<ListView android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_gravity="center"
android:layout_height="match_parent"
android:layout_weight="0.7"
android:layout_marginTop="5dp"
android:orientation="vertical"
android:layout_centerInParent="true"
android:divider="@color/dark_grey"
android:drawSelectorOnTop="false"
android:focusable="true"
android:layout_marginBottom="55dp"
android:cacheColorHint="#00000000"
android:listSelector="@color/light_grey"
android:dividerHeight="1px" />
Run Code Online (Sandbox Code Playgroud)
选择器工作得很好,但如何禁用选择器?
我试过了:
listView.clearChoices();
listView.setSelected();
listView.setSelector();
...
Run Code Online (Sandbox Code Playgroud)
还有一些东西,但没有任何作用.我有什么想法可以将我选择的项目恢复正常吗?不能那么复杂吧?
编辑:我需要一个程序化的解决方案!
谢谢!
django ×5
android ×3
python ×3
database ×2
filtering ×1
google-maps ×1
host ×1
javascript ×1
jvm ×1
many-to-many ×1
phpstorm ×1
url ×1
webstorm ×1