小编Neo*_*Neo的帖子

Django:在编辑模型时自定义FileField值

我有一个模特,有FileField.当我在视图中编辑此模型时,我想要更改其"视图"中FileField显示的"当前"值.让我解释.

models.py:

class DemoVar_model(models.Model):
    ...
    Welcome_sound=models.FileField(upload_to='files/%Y/%m/%d')
Run Code Online (Sandbox Code Playgroud)

forms.py:

class DemoVar_addform(ModelForm):
    ...
    class Meta:
        model = DemoVar_model        
Run Code Online (Sandbox Code Playgroud)

views.py:

soundform = DemoVar_addform(instance=ivrobj)
....
return render_to_response(template,{'soundform':soundform}, ....)
Run Code Online (Sandbox Code Playgroud)

现在我想在我的视图中编辑这个模型.当我在浏览器中查看时,我看到表单显示为

Welcome sound: Currently: welcome_files/2011/04/27/15_35_58_ojCompany.wav.mp3 
Change : <Choose File button>
Run Code Online (Sandbox Code Playgroud)

我想更改此"当前"值,该值描述文件在我的服务器上退出时的整个路径.我想将此字符串修剪为没有路径的文件名.我该如何做到这一点?

python django file-upload django-forms django-file-upload

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

从python中的多维数组中删除重复的条目

我有一个二维数组

 xx=[[a,1],[b,2],[c,3]]
Run Code Online (Sandbox Code Playgroud)

现在我正在尝试从中删除重复的条目.对于简单的1-D数组,简单的代码就像

xx=list(set(xx))
Run Code Online (Sandbox Code Playgroud)

会工作.但尝试在二维元素上设置会产生错误

temp = set(xx)
TypeError: unhashable type: 'list'
Run Code Online (Sandbox Code Playgroud)

一种解决方法是序列化xx元素,然后在新数组上执行一个列表(set()),然后再次反序列化所有元素.

在python中有什么解决方案吗?

python arrays

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

配置Django,Apache和Nginx

我在Apache + mod_wsgi上设置了我的Django应用程序.根据Django项目网站的建议,我正在使用Nginx提供静态文件.http://docs.djangoproject.com/en/dev/howto/deployment/modwsgi/

Apache在端口8081上运行,nginx在端口80上运行.现在有人建议我的配置错误,我应该反转Apache和Nginx的角色.我不确定为什么会这样.如果确实我的配置错了,为什么django网站会提出错误的方法呢?

apache django mod-wsgi nginx

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

Android:StaggeredGridLayoutManager在初始化时滚动到顶部

我正在使用StaggeredGridLayoutManager作为我的图片库.我已经设置好了setReverseLayout(true),所以图像从底部堆叠起来.

我面临的问题是在初始化app时,滚动点位于图库底部.当用户第一次启动应用程序时,我希望滚动位于库的顶部.

我已经尝试过使用scrollToPosition(下面的代码片段)但是滚动结果在画廊中间的某个地方结束,可能是因为在调用时图像没有正确加载scrollToPosition.

mLayoutManager = new StaggeredGridLayoutManager(2,StaggeredGridLayoutManager.VERTICAL);
    mLayoutManager.setReverseLayout(true);

mRecyclerView.setLayoutManager(mLayoutManager);
mImageList = ((MainActivity)getActivity()).getImages();
adapter = new ImageAdapter(getActivity(),mImageList);
mRecyclerView.setAdapter(adapter);
mRecyclerView.scrollToPosition(mImageList.size()-1);
Run Code Online (Sandbox Code Playgroud)

是否有正确的方法将滚动指向顶部而不是底部?

android gridlayoutmanager

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

Django:在模板中列出模型字段名称和值

可能重复:
Django - 迭代模板中的模型实例字段名称和值

嗨,

我正在尝试在模板中列出通用Django模型的字段和相应值.但是,我找不到一个针对相当常见问题的内置解决方案.我非常接近解决方案,但找不到出路.

view.py代码:

def showdetails(request, template):
    objects = newivr1_model.objects.all()
    fields = newivr1_model._meta.get_all_field_names()
    return render_to_response(template, {'fields': fields,'objects':objects},
        context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)

模板代码:

    <table>                                                                                                                                       
    {% for object in objects %}                                                 
        <tr>                                                                    
            {% for field in fields %}                                           
                <td>                                                            
            <!--    {{ object.field }} /*This line doesn't work*/ -->                                           
                </td>                                                           
            {% endfor %}                                                        
        </tr>                                                                   
    {% endfor %}                                                                
    </table>
Run Code Online (Sandbox Code Playgroud)

我应该在注释的模板行做什么,以便获得Object.field的值?

任何更好的DRY方法也是最受欢迎的.

python django django-models

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

烧瓶:多个蓝图相互干扰

我正在用蓝图测试Flask.我的应用有两个蓝图:

  1. 基础
  2. 意见

碱/ __ init__.py

base = Blueprint('base', __name__, static_folder='static', template_folder='templates') 
#http://server.com/base
Run Code Online (Sandbox Code Playgroud)

意见/ __ init__.py

opinions = Blueprint('opinions', __name__, static_folder='static', template_folder='templates')
#http://server.com/opinions
Run Code Online (Sandbox Code Playgroud)

__init__.py

app = Flask(__name__)
from app.base import views 
from app.base import base
app.register_blueprint(base, url_prefix='/base')

from app.opinions import views
from app.opinions import opinions
#app.register_blueprint(opinions, url_prefix='/opinions')  <-- Uncommenting this line causes issues
Run Code Online (Sandbox Code Playgroud)

如果我只注册其中一个蓝图,一切运行正常.但是,如果我同时注册两个蓝图,则始终会加载模板opinions.例如,如果我点击http://server.com/base,则会从views文件夹中选择index.html.Flask文档没有提到任何关于'template_folder'命名空间冲突的内容.

PS - 我想知道处理多个蓝图的其他方法.我不太习惯views从两个不同的蓝图导入文件.什么是更好的方法呢?

python flask

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

在chroot中运行mysql

我的10.04 ubuntu盒子上有一个chroot环境.我正试图在这个chroot环境中运行mysql,但是我收到了这个错误.

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Run Code Online (Sandbox Code Playgroud)

基本上我使用debootstrap和schroot来创建chroot.然后我在这个chroot环境中安装了"ubuntu-minimal"和mysql-server.如果您对此感兴趣,请执行以下步骤:https://help.ubuntu.com/community/DebootstrapChroot.但是mysql在chroot中不起作用./var/log/mysql.log和/var/log/mysql.err文件为空,mysqld服务器正在运行.有什么指针吗?

mysql linux ubuntu chroot

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

在Python中解析JSON字符串/对象

我最近开始在python中使用JSON.现在我通过post请求将JSON字符串传递给Python(Django).现在我想解析/迭代这些数据.但我找不到一种优雅的方法来解析这些数据,不知怎的,我确信存在.

data = request.POST['postformdata']
print data
{"c1r1":"{\"Choice\":\"i1\"}","c2r1":"{\"Bool\":\"i2\"}","c1r2":"{\"Chars\":\"i3\"}"}

jdata = json.loads(data)
print jdata
{u'c1r2': u'{"Chars":"i3"}', u'c1r1': u'{"Choice":"i1"}', u'c2r1': u'{"Bool":"i2"}'}
Run Code Online (Sandbox Code Playgroud)

这是预期的.但是现在当我想要获得价值时,我开始遇到问题.我必须做点什么

mydecoder = json.JSONDecoder()
for part in mydecoder.decode(data):                                             
    print part
# c1r2 c1r1 c2r1 ,//Was expecting values as well
Run Code Online (Sandbox Code Playgroud)

我希望获得值+键,而不仅仅是键.现在,我必须使用键来使用类似的东西来获取值

print jdata[key]
Run Code Online (Sandbox Code Playgroud)

如何以更简单的方式迭代这些数据,以便我可以迭代键值?

python json dictionary

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

Python:保存动态创建的对象类型

我正在使用类型函数动态创建一些对象类型.防爆

return type('DynamicType', (object,), dict)
Run Code Online (Sandbox Code Playgroud)

dict取决于用户输入.现在我希望我能够保存这个返回的类类型,并在不同的会话中使用相同的类.一种可能的方法是将dict保存为文本(或数据库)并再次从该dict创建此对象类型.但是有没有其他方法可以直接保存"类型"?

python django types class

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

bash - 如何查找当前的shell命令

当我运行命令时,我需要设置一些shell环境变量,该变量保存来自".bashrc"内部的当前命令.实际上我需要在运行命令时更新PROMPT_COMMAND,我需要整个命令行,我将从中选择相关值.

PROMPT_COMMAND='TITLE=`echo !!`; echo $TITLE;'
Run Code Online (Sandbox Code Playgroud)

我尝试echo !!在.bashrc中使用,但这只是给我!!标题.有任何想法吗?

bash history environment-variables

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