THẢO LUẬN

Tóc xinh quá chị ơi. 😄

0

Bài viết mang tính chất giải trí rất cao @@

+1

Cảm ơn về những chia sẻ quý giá của bác, hy vọng bác làm thêm nhiều bài viết bổ ích nữa cho ae 😁😁

+1

Model tốt nhất luôn được lưu lại nên dùng phím nóng để dừng chương trình thôi bạn.

0
thg 3 5, 2019 10:59 SA

Chi tiết quá ạ. Tks bro!!!

+1

@tuanbacyen

def create
    @song = Song.new(song_params)

    respond_to do |format|
      if @song.save
        format.html { redirect_to @song, notice: 'Song was successfully created.' }
        format.json { render :show, status: :created, location: @song }
      else
        format.html { render :new }
        format.json { render json: @song.errors, status: :unprocessable_entity }
      end
    end
  end
.....
private
   .....
    # Never trust parameters from the scary internet, only allow the white list through.
    def song_params
      params.require(:song).permit(:name, newline_to_br(:lyric)) # xử lý đổi từ đoạn văn có xuống dòng thành html ở đây
    end

Hiện mình code đoạn đổi từ newline về <br/> nhưng không hiểu sao lại lỗi trên. Helper đầy đủ của mình đây

# songs_helper.rb
module SongsHelper
    
    def newline_to_br(text)
        text.to_s.gsub(/\n/, '<br/>').html_safe
    end

    def br_to_newline(text)
        text.to_s.gsub!(%r~<br\s*\/?>~, "\n")
    end
end
0

Hi All, Cho mình hỏi là sau khi cài đặt xong python 2.7.16, pip 19.0.3 và wxpython 2.8 thì mình cài ride nhưng k thể cài được nó báo lỗi như sau: DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. Requirement already satisfied: robotframework-ride in c:\python27\lib\site-packages (1.7.3.1) Requirement already satisfied: Pygments in c:\python27\lib\site-packages (from robotframework-ride) (2.3.1) Requirement already satisfied: robotframeworklexer in c:\python27\lib\site-packages (from robotframework-ride) (1.1) Requirement already satisfied: wxPython in c:\python27\lib\site-packages (from robotframework-ride) (4.0.4) Requirement already satisfied: Pypubsub in c:\python27\lib\site-packages (from robotframework-ride) (4.0.0) Requirement already satisfied: robotframework in c:\python27\lib\site-packages (from robotframework-ride) (3.1.1) Requirement already satisfied: Pywin32 in c:\python27\lib\site-packages (from robotframework-ride) (224) Requirement already satisfied: six in c:\python27\lib\site-packages (from wxPython->robotframework-ride) (1.12.0) Requirement already satisfied: Pillow in c:\python27\lib\site-packages (from wxPython->robotframework-ride) (5.4.1) Requirement already satisfied: typing in c:\python27\lib\site-packages (from Pypubsub->robotframework-ride) (3.6.6)

Cho mình hỏi hướng giải quyết được k ạ?

0
Avatar
đã bình luận cho bài viết
thg 3 5, 2019 8:09 SA

tks tác giả 😃)

0

@tuanbacyen Theo như gợi ý của bạn thì mình đã đổi như sau

# edit.html.erb
<%= f.text_area :lyric, :value => @song.lyric.gsub!(%r~<br\s*\/?>~, "\n"), :required => true %>

Nhưng dù gì thì mình vẫn muốn đưa vào Helper nên để 1 code như sau:

# songs_helper.rb
module SongsHelper

    ......

    def br_to_newline(text)
        text.to_s.gsub!(%r~<br\s*\/?>~, "\n")
    end
end

Và ở view của mình

# edit.html.erb
<%= f.text_area :lyric, :value => br_to_newline(@song.lyric), :required => true %>

Đây là ý mình muốn làm. Vấn đề là chỗ từ :value ra là có vẻ chưa đúng lắm

Update: nó ra đúng như mình mong muốn, vấn đề là giờ làm thế nào để sau khi bấm edit, db của mình lưu vào là <br/>, không phải newline

0

@devil_boom_129 Mình chưa hiểu ý bạn lắm. Nhưng khi bạn lưu trong DB dạng \r\n thì mặc định khi edit hay làm gì đó với textarea thì nó tự động nhận xuống dọng. Đây là sự không đồng bộ của html khi xuống dòng phải dùng
. Nên nếu bạn đang lưu dạng <br> trong DB mà muốn hiển thị lên textarea mà có xuống dòng thì thực hiện một bước convert từ <br> xang \n bằng cách xet cho value của trường text đó thôi.🤔🤔

0
Avatar
đã bình luận cho bài viết
thg 3 5, 2019 6:07 SA

bạn có thể dùng Attribute PageSize hoặc MaxTop để limit nhé https://stackoverflow.com/questions/29165465/difference-between-pagesize-and-maxtop

0

cho em hỏi làm s a dừng ở train ở model 4 đựoc v ạ 😦(

0

@devil_boom_129 ừ thì anh đang hỏi là sao ko làm cách dễ, chú cứ ném string dạng \n ra rồi ở view làm css cho cái đoạn text đấy là white-space: pre thì nó cũng hiển thị dạng xuống dòng thôi mà. Edit thế nào đi nữa có dấu xuống dòng là trong db nó cũng lưu vào là \n mà

0

Mình đã trả lời bạn ở bên trên, bạn tham khảo lại nhé.

0

@dat.hedspi còn hiển thị ở show thì html_safe với simple_format thoải mái. helper là em dùng với form

0

@dat.hedspi thử tăng độ khó tí ạ. với lại nếu giờ lúc edit em xuống dòng thì lưu vào db cũng xuống dòng nốt ấy ạ. em thì thà chọn là dạng chuỗi loằng ngoằng hơn cả đoạn dài

0
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí