반응형
text = """<div>
<h1>Title</h1>
<p>A long text........ </p>
<a href=""> a link </a>
</div>"""

이러한 string 텍스트가 있을때 string 내의 html 태그를 지우고 싶을떄가 있다.

두가지 방법을 이용할 수 있다.

 

1. 정규표현식  (regex)

import re

def cleanhtml(raw_html):
  cleanr = re.compile('<.*?>')
  cleantext = re.sub(cleanr, '', raw_html)
  return cleantext

만약 &nsbm 가 포함된 string 이라면

import re

def cleanhtml(raw_html):
  cleanr = re.compile('<.*?>|&([a-z0-9]+|#[0-9]{1,6}|#x[0-9a-f]{1,6});')
  cleantext = re.sub(cleanr, '', raw_html)
  return cleantext

 

2. BeautifulSoup 

from bs4 import BeautifulSoup
cleantext = BeautifulSoup(raw_html, "lxml").text

 

 

외부라이브러리를 사용하는것을 지양한다면 1번안을 사용하나

text의 길이가 매우 큰 경우에는 속도적인 면에서는 2번안이 더 좋다.

반응형
반응형

PostgreSQL 데이터베이스에서 ASP.NET Core MVC Identity를 사용하기위한 가이드

1. 기본 ASP.NET Core 웹 응용 프로그램 템플릿을 시작하십시오.

Visual Studio 2017을 사용하여 ASP.NET MVC Core 웹 응용 프로그램 프로젝트를 만듭니다. "개별 사용자 계정"을 사용하도록 인증을 변경하십시오. 다음으로이 기본 애플리케이션을 편집하여 PostgreSQL 데이터베이스를 사용합니다.

2. 필수 구성 요소 설치

“References”를 마우스 오른쪽 버튼으로 클릭하고“Manage NuGet Packages”를 선택하십시오. 다음으로“Npgsql.EntityFrameworkCore.PostgreSQL”및“Npgsql.EntityFrameworkCore.PostgreSQL.Design”을 검색하여 설치하십시오.

3. 공급자 변경

Startup.cs 파일을 엽니 다 . ConfigureServices () 아래 에 다음 코드 블록이 있습니다.

// Add framework services.
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
services.AddIdentity<User>()
                .AddEntityFrameworkStores<ApplicationDbContext>()
                .AddDefaultTokenProviders();

SQL Server 부분에 주목하십시오. 애플리케이션에 PostgreSQL을 사용하도록 지시합니다.

// Add framework services.
services.AddDbContext<ApplicationDbContext>(options =>
options.UseNpgsql(Configuration.GetConnectionString("DefaultConnection")));
services.AddIdentity<User, IdentityRole<long>>()
                .AddEntityFrameworkStores<ApplicationDbContext,long>()
                .AddDefaultTokenProviders();

4. 연결 문자열 변경

다음으로 appsettings.json 파일을 열면 이 파일에 기본 SQL Server 연결 문자열이 있습니다.

"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=aspnet-MyPostgresApp-1a3c6f7e-a81e-4b86-8575-8ccebff9e7b6;Trusted_Connection=True;MultipleActiveResultSets=true"
},

이 SQL Server 연결 문자열을 변경해야합니다. PostgreSQL 연결 문자열을 사용하십시오.

"ConnectionStrings": {
"DefaultConnection": "Server=localhost;Port=5432;Database=myDataBase;User Id=myUsername;Password=myPassword;"
},

5. 데이터베이스 마이그레이션 실행

애플리케이션을 처음 실행하면 테이블이 정의되지 않았다는 오류 페이지가 표시됩니다. "마이그레이션 추가"단추를 추가하면 프레임 워크가 데이터베이스에 필요한 테이블을 작성합니다. PostgreSQL에서 ASP.NET Core를 실행하면됩니다.

 

원본 : https://medium.com/@RobertKhou/asp-net-core-mvc-identity-using-postgresql-database-bc52255f67c4

반응형
반응형
<div v-html="str"></div>
data: function () {
           return {
           str = "<p>some text</p>"
        }
    }

 

VueJs 2 부터 작동한다.

반응형
반응형

SQL Server의 기본 격리 수준(isolation level)은 read committed 입니다. 

그래서 데이터를 읽을 때는 공유 잠금이 유지됩니다. 그러므로, 쉽게 설명하자면 

SELECT문이 실행 중인 동안에 같은 row혹은 table에 insert나 update하는 작업은 block됩니다. 

거꾸로 같은 row, data page 혹은 테이블에 데이터를 insert, update하는 동안 SELECT문은 block되게 됩니다. 

이렇게 되면 데이터베이스 성능이 현저히 떨어지게 됩니다. 

그러므로 일반적으로 단순 조회 쿼리에는 with (nolock)문을 추가하여 사용합니다.

ex) SELECT * FROM MEMBER with (nolock)



출처: https://skymin2.tistory.com/43 [생계형 개발자]

반응형

+ Recent posts