问题列表 - 第25355页

Django查看安全性和最佳实践

我最近开始研究Django,现在我的应用程序即将完成,我开始怀疑安全性和最佳实践.

我有视图,在页面中生成一个页面和不同的函数,发布AJAX请求到单个视图.例如,我有一个名为show_employees的视图,我可以通过将一个post请求传递给视图delete_employee和update_employee来删除和更新员工.

  1. 我在每个视图之前放置了@login_required装饰器,因为我不希望任何人在未经过身份验证的情况下访问它们.这个可以吗?

  2. 在delete_employee和update_employee视图中,我只响应请求,如果它是AJAX POST请求(uisng is_ajax()).这个可以吗?

  3. 当视图成功执行所需操作时返回"成功",当表单中存在验证错误时返回错误但我仍然没有处理其他异常.我该怎么做?我应该通过像Ajax响应返回标准500页通过用try-except块来处理所有的异常包裹的看法?

  4. 还有什么我可以保证我的观点吗?

这是我的示例视图:

    @login_required
    def add_site(request):
        data = {}
        if request.method == 'POST':
            if request.is_ajax():
                form = AddSiteForm(request.user, request.POST)
                if form.is_valid():
                    site = form.save(commit=False)
                    site.user = request.user
                    site.save()
                    data['status'] = 'success'
                    data['html'] = render_to_string('site.html', locals(), context_instance=RequestContext(request))
                    return HttpResponse(simplejson.dumps(data), mimetype='application/json')
                else:
                    data['status'] = 'error'
                    data['errors'] = {}
                    for field, error in form.errors.iteritems():
                        data['errors']['id_'+field] = strip_tags(unicode(error))
                    return HttpResponse(simplejson.dumps(data), mimetype='application/json')
Run Code Online (Sandbox Code Playgroud)

谢谢.

python security django django-views

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

Django | 保存模型的选择列表值

我有一个有选择列表的表单:

<select name="cellSerpro" id="idcellserpro" class="field text" >
    <option value="">---</option>
    <option value="option1">Verizon</option>
    <option value="option2">AT&T</option>
    <option value="option3">T-Mobile</option>
    <option value="option4">Sprint</option>
</select>
Run Code Online (Sandbox Code Playgroud)

那么我如何从Django的模型类中获取它的选定值以便将其保存在数据库中,我已经通过网络进行了搜索,但却无法找到任何方法.

我的样本模型:

class Author(models.Model):
    first_name = models.CharField(max_length=100)
    last_name = models.CharField(max_length=3)
    cellSerpro = # ---- how to declare the choice list and get the selected value ----
Run Code Online (Sandbox Code Playgroud)

谢谢,谢谢..

django

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

Spreadsheet_Excel_Writer数据输出已损坏

我使用Spreadsheet_Excel_Writer生成.xls文件,它工作正常,直到我必须处理大量数据.在某个阶段,它只是写了一些无意义的字符并退出填充某些列.但是有些列是最后的字段(通常是数字数据)

我不太确定xls文档是如何形成的:逐行或col by col ...而且它显然不是字符串中的错误,因为当我删除一些数据时,错误会再次出现.

我认为我的所有代码都没有必要

这里有一些必需品

$filename = 'file.xls';
$workbook = & new Spreadsheet_Excel_Writer(); 
$workbook->setVersion(8); 
$contents =& $workbook->addWorksheet('Logistics');
$contents->setInputEncoding('UTF-8');

$workbook->send($filename);

//here is the part where I write data down
$contents->write(0, 0, 'Field A');
$contents->write(0, 1, 'Field B');
$contents->write(0, 2, 'Field C');

$ROW=1;
foreach($ordersArr as $key=>$val){
  $contents->write($ROW, 0, $val['a']);
  $contents->write($ROW, 1, $val['b']);
  $contents->write($ROW, 2, $val['c']);

  $ROW++;
}
$workbook->close(); 
Run Code Online (Sandbox Code Playgroud)

php excel pear xls

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

访问被拒绝.(HRESULT异常:0x80070005(E_ACCESSDENIED))?

当我在线上传我的网站时.我使用可爱的FTP上传网站.在我使用网址运行网站后在线上传网站后,它会给出这样的错误

访问被拒绝.(来自HRESULT的异常:0x80070005(E_ACCESSDENIED))描述:在执行当前Web请求期间发生了未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.

异常详细信息:System.UnauthorizedAccessException:拒绝访问.(HRESULT异常:0x80070005(E_ACCESSDENIED))

ASP.NET无权访问所请求的资源.考虑将资源的访问权限授予ASP.NET请求标识.ASP.NET具有基本进程标识(通常是IIS 5上的{MACHINE}\ASPNET或IIS 6上的网络服务),如果应用程序未模拟,则使用该标识.如果应用程序模拟通过,则标识将是匿名用户(通常为IUSR_MACHINENAME)或经过身份验证的请求用户.

要授予对文件的ASP.NET访问权限,请在资源管理器中右键单击该文件,选择"属性",然后选择"安全"选项卡.单击"添加"以添加适当的用户或组.突出显示ASP.NET帐户,并选中所需访问的框.

这是错误页面.

asp.net

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

在dotnet中查找缓慢/无效的方法调用

我在一些遗留代码中遇到了一大堆旧的方法调用,其中一个或一些正在制造瓶颈并且确实减慢了速度.有没有快速的方法我可以获得一个报告,说明哪些方法调用花费时间,没有在调试中运行,单步执行并查看光标暂停的位置?

.net

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

Hibernate:脏检查和只更新脏属性?

在"好旧的JDBC时代"中,我编写了许多SQL代码,只对实际更改的"属性/成员"进行了非常有针对性的更新:

例如,考虑具有以下成员的对象:

public String name;
public String address;
public Date date;
Run Code Online (Sandbox Code Playgroud)

如果仅date在某些Business Method中更改,我只会UPDATE为该date成员发出SQL .

然而,似乎(这是我对Hibernate的"印象")当使用标准Hibernate映射(映射完整类)时,即使只有单个成员的更新也会导致Hibernate生成的SQL语句中对象的完全更新.

我的问题是:

  1. 这个观察是否正确,Hibernate 不会智能地检查(在完全映射的类中),哪些成员发生了更改,然后只发布特定更改成员的更新,而是始终更新(在生成的SQL Update语句中)所有映射成员(一个类),即使它们没有被更改(如果由于一个成员变脏而导致对象变脏...)

  2. 我该怎么做才能让Hibernate更新那些已被更改的成员?我正在寻找一个解决方案让Hibernate只更新实际更改的成员.

(我知道Hibernate在脏检查方面做了很多工作,但据我所知,这个脏检查只与识别整个对象是否脏,而不是单个成员是脏的有关.)

java hibernate

17
推荐指数
2
解决办法
3万
查看次数

在这种情况下,正确的javascript语法应该是什么?

我有一个混合HTML和js的代码.我无法理解它.

location.description + '<br><a href="javascript:void(0);" onclick="showStreet;">ShowStreet </a><br>'+ location.lat + '<br> + location.lng
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我吗?

html javascript syntax

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

什么是学说中的存储库?

我想知道存储库在学说中意味着什么?

有人可以解释一下吗?

doctrine

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

你怎么知道java中的变量类型?

假设我声明了一个变量:

String a = "test";
Run Code Online (Sandbox Code Playgroud)

我想知道它是什么类型,即输出应该是java.lang.String我该怎么做?

java variables types

128
推荐指数
5
解决办法
28万
查看次数

Ruby 1.9 GarbageCollector,GC.disable/enable

我正在开发一个Rails 2.3,Ruby 1.9.1 webapplication,它在每个请求之前进行了大量的计算.对于每个请求,它必须计算具有300个节点和~1000个边的图.图形及其所有节点,边和其他对象都为每个请求(~2000个对象)初始化 - 实际上它们是使用Marshal.load(Marshal.dump())从未计算的缓存图中克隆的.

性能在这里是一个很大的问题.现在整个请求平均需要150毫秒.然后我看到在请求期间,部分计算随机需要更长时间.假设这可能是GarbageCollector,我将请求包装在GC.disable和GC.enable中,以便请求等待使用garbagecollecting直到计算和渲染完成.

def query
  GC.disable
  calculate
  respond_to do |format| format.html {render} end
  GC.enable
end
Run Code Online (Sandbox Code Playgroud)

现在平均请求大约需要100毫秒(减少50毫秒).

但我不确定这是一个好的/稳定的解决方案,我认为这样做肯定有缺点.有没有人遇到过类似问题或看到上述代码有问题?

ruby garbage-collection ruby-on-rails

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